
Java
文章平均质量分 76
Java 开发日常
BIT_666
天道酬勤,厚积薄发
展开
-
Java - 获取 Jar 包内的 pom.xml 文件
获取 Java Jar 包内文件。原创 2023-12-28 08:00:00 · 2102 阅读 · 0 评论 -
C++ / JNI - MacOS Java 调用 JNI 保姆级示例
Java 调用 JNI on MacOs 保姆级教程。原创 2022-12-28 15:20:41 · 1141 阅读 · 2 评论 -
C++ / JNA - Java 调用 C++ 动态库 <.dylib / .so> By CLion
Java 通过 jna 库实现调用 C++ 动态库。原创 2022-12-07 08:00:00 · 2491 阅读 · 4 评论 -
Maven - 不能错过的 MacOS / M1 mvn package 效率提升方案
Mvn package 打包时间过长踩坑与优化。原创 2022-11-10 10:41:59 · 2062 阅读 · 13 评论 -
Java / Tensorflow - Expects arg[0] to be int64 but int32 is provided 异常处理
Java 调用 Session 报错 Expects arg[0] to be int64 but int32 is provided 异常解决。原创 2022-11-01 19:00:38 · 736 阅读 · 1 评论 -
Spark / Scala - scala.collection.convert.Wrappers$MutableSetWrapper - no valid constructor
Scala Array、Set 转换为 Java.util.Set 踩坑与尝试。原创 2022-10-17 15:50:45 · 1346 阅读 · 2 评论 -
Java / Tensorflow - API 调用 pb 模型使用 GPU 推理
Java x Tensorflow x GPU 使用与踩坑指南。原创 2022-09-30 14:29:52 · 2965 阅读 · 5 评论 -
Shell - Java -jar 提交不显示中文与 MalformedInputException: Input length = 1
Shell Input length = 1 报错排查与解决。原创 2022-09-23 13:23:19 · 847 阅读 · 4 评论 -
Flink 实战 - 3.读取 Parquet 文件 By Scala / Java
parquet 文件常见与 Flink、Spark、Hive、Streamin、MapReduce 等大数据场景,通过列式存储和元数据存储的方式实现了高效的数据存储与检索,下面介绍 Flink 场景下如何读取 Parquet。原创 2022-07-21 10:05:34 · 1368 阅读 · 3 评论 -
Scala/Java - shuffle 数组详解
本地使用 spark paralize 数组 rdd 时需要构造一个随机数组,分别使用 java.util 和 scala.util 实现,下面记录下不同的 shuffle 方法以及踩到的坑。原创 2022-07-08 11:47:18 · 1222 阅读 · 2 评论 -
Executor - 一文搞懂 ThreadPoolExecutor 与 BlockingQueue
ThreadPool 是 java 的一种多线程处理方式,和前面提到了 RedisPool 类似,即通过一个 pool 批量管理,ThreadPool 管理线程,RedisPool 管理 Jedis 连接。下面主要介绍 ThreadPool 的参数含义,BlockingQueue 的几种类型以及 Executors 下 newCachedThreadPool、newFixedThreadPool、newSingleThreadPool 以及 newScheduleThreadPool 的使用与不同。....原创 2022-06-14 16:36:13 · 2198 阅读 · 3 评论 -
Executor - Shutdown、ShutdownNow、awaitTermination 详解与实战
Executor - Shutdown、ShutdownNow、awaitTermination 详解与实战原创 2022-06-08 18:08:23 · 4665 阅读 · 0 评论 -
Maven - 生成的 jar 包容量变大异常排查
maven 打包 jar 包容量异常原因排查与解决。原创 2022-05-06 20:16:22 · 3030 阅读 · 0 评论 -
Java - MR 读写 orc 之 NoSuchMethodError: hive.ql.exec.vector.VectorizedRowBatch.getMaxSize()
一.引言上一篇文章提到了 Java map-reduce 如何单独读取 ORC 文件以及 RcFile 文件,在同一个 MR 任务下分别读取 RcFile 以及 ORC 文件时,报如下错误:java.lang.NoSuchMethodError: org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch.getMaxSize()I。完整的异常栈如下:2022-04-20 06:44:47,326 FATAL [main] org.apach.原创 2022-04-20 15:50:49 · 2815 阅读 · 0 评论 -
MapReduce - 读取 ORC, RcFile 文件
一.引言MR 任务处理相关 hive 表数据时格式为 orc 和 rcFile,下面记录两种处理方法。二.偷懒版读取 ORC,RcFile 文件最初不太熟悉 mr,只会 textFormat 一种输入模式,于是遇到 orc 和 rcFile 形式的 hive 数据需要在 mr 读取时,都是先通过 INSERTOVERWRITEDIRECTORY 将 hive 表重新输出一份 hdfs 的 text 数据,随后用 mr 读取该 text 文件,该方法适合偷懒且原始 hive 数据不大,..原创 2022-04-19 11:21:16 · 2686 阅读 · 2 评论 -
Flink - 11.Scala/Java trigger 简介与使用
Flink 使用 windowAll 生成 AllwindowedStream 后调用 Trigger 执行窗口触发逻辑,下面对 Trigger 触发器做一个基本的了解。原创 2022-03-22 11:37:36 · 2384 阅读 · 2 评论 -
Maven - 同时编译打包 Scala & Java 找不到类
项目编码同时用到了 Scala 和 Java,mvn package 打包后发现项目内只引入了 Scala 代码的 class,而 Java 相关的代码并未引入。通过修改 pom.xml配置解决。原创 2022-03-01 12:02:35 · 1689 阅读 · 2 评论 -
Scala - 向 java String... 方法传参
使用 scala 调用 java 变长参数方法。原创 2022-01-11 15:21:36 · 915 阅读 · 0 评论 -
Java - java.lang.NoSuchMethodError: xxx 错误详解
java.lang.NoSuchMethodError 报错详细分析与解决方案。原创 2021-12-23 17:41:22 · 11928 阅读 · 3 评论 -
Scala / Java - 本地 jar 包导入项目 Maven | Pom
一.引言在没有公库或相互协作时,项目需要导入现成的 jar 包,有两种方案,一种是一劳永逸型:即将 jar 包打入本地 maven 环境这样后续其他项目也可以使用,还有一种是只对当前项目生效,即将 jar 包放入项目 lib 包并用 pom 导入。二. 加入 maven 仓库1.加入仓库jar_path 为待加入 maven 仓库的 jar 包地址,groupId、artifactId 和 version 用于区分和发版,自己定义即可#!/bin/bashjar_path=~/原创 2021-12-18 11:40:14 · 1566 阅读 · 0 评论 -
Spark - 大规模数据去重
Spark 大规模数据去重记数实践原创 2021-12-02 12:39:34 · 2630 阅读 · 0 评论 -
Scala - PriorityQueue 踩坑之不保序
继承 Comparator 实现 PriorityQueue 并且添加元素后,遍历 PriorityQueue 发现元素乱序,于是开始踩坑之旅。原创 2021-11-27 09:12:57 · 865 阅读 · 0 评论 -
Scala/Java - 本地执行 Unsupported major.minor version 52.0
在通道机部署本地任务时,执行报错Unsupported major.minor version 52.0 ,通过 spark-submit local 模式解决原创 2021-11-24 10:08:02 · 1037 阅读 · 0 评论 -
Scala/Java - break & continue
scala / java break,continue 使用原创 2021-11-17 16:58:32 · 970 阅读 · 0 评论 -
Java/Sacla 获取间隔内的全部日期
引言:需要根据给定的开始日期 st 以及结束日期 end,获取 st 与 end之间间隔的全部日期,之前使用 Date实现过类似,需求虽然不是多线程场景也不是并发环境,但是最新的Java Api都推荐了新的时间Api,例如: Instant,LocalDateTime 系列,下面用 LocalDate 实现遍历日期间隔。实现:java 和 scala 实现差不多,这里用scala实现一下val dateTimeFormat = DateTimeFormatter.ofPattern(..原创 2021-03-18 15:54:29 · 275 阅读 · 0 评论 -
Effective Java 1.多参数构造时使用构建器
1.引言静态工厂和构造器有个共同的局限性:它们都不能很好地扩展到大量的可选参数。当初始化类需要较少的参数是,Java 可以尝试实现多种构造方法,scala 相同,可以重载多种apply方法,但是当参数过多时,维护多个构造器将变得困难且难以理解。例如一个User用户类包含10-20个属性,如果我们初始化一个用户类 new User("abc",‘a","b","c",...,"z"),很容易混淆参数,这时候构建器 Builder 就派上用场。2.构建器Demo其实在日常程序编写时,经常用到构.原创 2020-11-03 19:50:18 · 251 阅读 · 0 评论 -
GC (Allocation Failure) 那些事
GC (Allocation Failure) 那些事平常写Java程序,经常看到 GC(Allocation Failure) 这个日志,大概查了查意思是是jvm在执行垃圾回收,一般情况下不影响程序运行,只会拖慢程序运行时间。但是经常遇到这个日志还是不爽,今天就盘一下!GC(Allocation Failure)造成的垃圾回收为young gc 又称minor gc。Demo代码下面这几行spark代码是经常引起 GC(Allocation Failure) 日志的代码写法,基....原创 2020-07-07 10:59:12 · 20593 阅读 · 0 评论 -
Java Map Compute ComputeIfAbsent ComputeIfPresent方法
Compute,ComputeIfAbsent,ComputeIfPresent简介Compute为计算,即当前key的newValue值基于oldValue而得来,与merge方法类似,compute方法也可以自定义Function。ComputeIfAbsent和ComputeIfPresent则是根据当前key是否存在,再做出compute的两种衍生方法,大体意思与Compute...原创 2020-01-21 15:28:37 · 1814 阅读 · 0 评论 -
Java Map Merge方法
Merge先铺下源码:Merge意为合并,这里主要是针对Map多个key-value对进行处理,如果key存在,则执行value的merge方法,这里merge方法是自己定义的,如果key不存在,则会根据默认值将key-value对put到Map中。 default V merge(K key, V value, BiFunction<? supe...原创 2020-01-20 15:15:31 · 3737 阅读 · 2 评论