随笔分类 -  15.Java/Scala

上一页 1 2 3 4 5 6 ··· 19 下一页
摘要:JDK17与Hbase client的兼容性问题最近有1个项目升级到JDK17,里面用到了hbase-client(版本:以1.2.0-cdh5.7.1为基础,公司的大数据同学内部做了一些二次开发 ),启动时发现一直连不上集群,直接报错了,上hbase 官网看了下: 别说JDK 17了,连JDK11都支持不完善,难道把JDK版本又降回去?有点不甘 阅读全文
posted @ 2023-06-17 19:13 菩提树下的杨过 阅读(1100) 评论(0) 推荐(0)
摘要:mybatis 3.x 升级时遇到的keyProperty问题小坑背景: 有1个项目,原来是用的mybatis 3.4.6版本,其中有一些插入mapper是这样写的: Integer insertEntitySelectiveShard(@Param("tableSuffix") String tableSuffix,@Param("entity") XXXEnt 阅读全文
posted @ 2023-06-17 15:59 菩提树下的杨过 阅读(827) 评论(0) 推荐(0)
摘要:java线程池使用小技巧:自定义拒绝策略自定义java线程池拒绝策略,实现异常情况的监控埋点 阅读全文
posted @ 2023-03-12 16:10 菩提树下的杨过 阅读(1263) 评论(0) 推荐(2)
摘要:java中如何处理夏令时?在国际化的项目中,处理时间时经常会遇到夏令时(BST,British Summer Time)问题,发明夏令时(以及冬令时)主要是为了省电。 冷知识:中国历史上也曾经采用过(1986-1991)夏令时,后来因为各种原因,最终取消了这一制度(参见:https://baijiahao.baidu.com 阅读全文
posted @ 2022-11-13 14:57 菩提树下的杨过 阅读(2914) 评论(1) 推荐(1)
摘要:面试中关于字符串及常量池的一些考点字符串及常量池在面试中很容易被问到,前2天在为公司做校招面试时,发现很多同学对相关细节不太清楚,在此梳理一下: 先回顾一下java中字符串的设计,大家都知道jvm中有所谓的"字符串常量池"设计,当String s = "xxx"时,会先检查常量池中有没有,如果没有则加入常量池(缓存起来),下次再遇到 阅读全文
posted @ 2022-05-22 09:10 菩提树下的杨过 阅读(213) 评论(4) 推荐(2)
摘要:ToStringBuilder如何忽略null和空字符串日常开发中,经常用org.apache.commons.lang3.builder.ToStringBuilder工具类来记录日志,比如: package com.cnblogs.yjmyzz; import org.apache.commons.lang3.builder.ToStringBuil 阅读全文
posted @ 2022-05-08 07:46 菩提树下的杨过 阅读(992) 评论(0) 推荐(0)
摘要:Gson如何自定义Calendar序列化/反序列化直接开干吧,假设有这么一个类: @Data @AllArgsConstructor class BeanSample { public Calendar birthday; @Override public String toString() { if (birthday == null) { re 阅读全文
posted @ 2022-04-20 22:29 菩提树下的杨过 阅读(619) 评论(0) 推荐(0)
摘要:算法练习(20)-平滑加权轮询算法所有负载均衡的场景几乎都会用到这个算法:假设有2个服务器A、B,其中A的分配权重为80,B的分配权重为20,当有5个请求过来时,A希望分到4次,B希望分到1次。 一个很自然的想法:A-A-A-A-B ,按权重顺序依次分配,同时计数,每分配1次,计数减1,减到0后,再分配『次权重』的服务器。 看上去好 阅读全文
posted @ 2022-02-20 20:33 菩提树下的杨过 阅读(810) 评论(1) 推荐(3)
摘要:算法练习(19)-单源最短路径dijkstra算法如上图,先初始化1个图,每条边上的红色数字为路径权重:(Node,Edge的定义参见算法练习(17)-图的广度优先遍历/深度优先遍历) Graph init() { List<Node> nodes = new ArrayList<>(); List<Edge> edges = new ArrayL 阅读全文
posted @ 2021-11-14 19:24 菩提树下的杨过 阅读(281) 评论(0) 推荐(0)
摘要:算法练习(18)-图的拓扑排序如上图,假设有一个大型代码工程,里面有5个模块: 模块1依赖模块2 模块2依赖模块3和模块5 模块3依赖模块4和模块5 那么,项目在编译时,应该按怎样的的顺序编译? 这就是所谓的拓扑排序问题 就这个示例而言,显然正确的编译顺序是:5->4->3->2->1 或 4->5->3->2->1 (注:4与 阅读全文
posted @ 2021-11-07 19:07 菩提树下的杨过 阅读(310) 评论(0) 推荐(0)
摘要:算法练习(16)-水平翻转一颗二叉树思路:依旧还是层次遍历, 按层入队, 然后出队时, 交换左右节点 阅读全文
posted @ 2021-11-03 12:07 菩提树下的杨过 阅读(113) 评论(0) 推荐(0)
摘要:算法练习(11)-二叉树的各种遍历二叉树的节点结构如下: public class TreeNode { public TreeNode left; public TreeNode right; public int val; public TreeNode(int val) { this.val = val; } public T 阅读全文
posted @ 2021-10-27 22:33 菩提树下的杨过 阅读(366) 评论(0) 推荐(0)
摘要:算法练习(8)-判断单链表是否回文链表在一些文学作品中,大家想必接触过回文诗,比如:“雾窗寒对遥天暮,暮天遥对寒窗雾”或“垂帘画阁画帘垂”,即:正着念反着念完全一样。回文单链表跟这个类似,比如: 0-1-2-1-0或0-1-1-0,很容易发现规律:可以找到一个对称轴,将链表分为前后二段,并且前后对折起来,完全重合。 为了方便,先定义单链 阅读全文
posted @ 2021-10-17 21:23 菩提树下的杨过 阅读(293) 评论(0) 推荐(0)
摘要:如何解析SIP报文本文讲述了如何使用开源项目pkts-sip对SIP进行解析,以及如何扩展 阅读全文
posted @ 2021-09-28 10:29 菩提树下的杨过 阅读(2555) 评论(0) 推荐(2)
摘要:snowflake算法的workerId问题本文主要探讨了snowflake(雪花算法)使用中,如何合理设置workerId的问题 阅读全文
posted @ 2021-09-19 13:21 菩提树下的杨过 阅读(3163) 评论(0) 推荐(0)
摘要:mockito测试final类/static方法/自己new的对象先准备几个类,方便后面讲解: public final class FinalSampleUtils { public static String foo() { return "aaa"; } public static String bar(String a) { return "bar:" + 阅读全文
posted @ 2021-09-12 12:26 菩提树下的杨过 阅读(2560) 评论(0) 推荐(1)
摘要:flink 1.11.2 学习笔记(5)-处理消息延时/乱序的三种机制在实时数据处理的场景中,数据的到达延时或乱序是经常遇到的问题,比如: * 按时间顺序发生的数据1 -> 2,本来应该是1先发送,1先到达,但是在1发送过程中,因为网络延时之类的原因,导致1反而到达晚了,变成2先到达,也就造成所谓的接收乱序; * 发送方本身就延时了,比如:事实上按1 -> 2产生的数 阅读全文
posted @ 2021-09-05 17:28 菩提树下的杨过 阅读(1264) 评论(0) 推荐(0)
摘要:CompletableFuture笔记CompletableFuture是java8引入的一个很实用的特性,可以视为Future的升级版本,以下几个示例可以说明其主要用法(注:示例来自《java8实战》一书第11章) 一、引子:化同步为异步 为了方便描述,假设"查询电商报价"的场景:有一个商家Shop类,对外提供价格查询的服务getPr 阅读全文
posted @ 2021-06-06 23:08 菩提树下的杨过 阅读(369) 评论(0) 推荐(1)
摘要:java中整数常量池(-128~127)上限如何调整?众所周知:java中Integer有一个常量池范围-128~127 Integer a = 500, b = 500; System.out.println(a == b);//false a = 100; b = 100; System.out.println(a == b);//true 相信也 阅读全文
posted @ 2021-05-30 22:40 菩提树下的杨过 阅读(606) 评论(0) 推荐(2)
摘要:利用jave2进行音频处理很多朋友都知道,ffmpeg是一个功能强大的多媒体处理工具,可惜它并不是java语言开发,如果需要在java项目中使用时,得自己写很多代码,幸好github上有一个开源项目jave2 把ffmpeg做了封装,很大程度上简化了开发,使用方法如下: 先添加依赖项 <dependency> <groupI 阅读全文
posted @ 2021-05-03 17:30 菩提树下的杨过 阅读(1626) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 ··· 19 下一页