java
文章平均质量分 76
宁为百夫长
这个作者很懒,什么都没留下…
展开
-
Spring Cloud 应用如何注册到多个注册中心
springboot 支持多注册中心转载 2022-08-17 17:08:40 · 3001 阅读 · 0 评论 -
idea常用插件和注释
背景随着idea越来越受开发者捧月,相信很多人,无论在换公司或者配置新得电脑,都会重新配置各种各样得插件,比如:lombok,mybatis系列,maven等。但人得记忆都有限得,每天都在行走,从未没有停下,借用法师一句话“人生那么长,停下又何妨”。笔者只记录常用插件,如有补充或者更好得插件,可以分享大家一起共勉。如描述错误得,欢迎大家指出。(ps:有笔者都不一一解释,只是单纯记录一下)插件CamelCaseCodeGlanceCodotaFree Mybatis pluginGoogle原创 2021-07-14 15:16:03 · 2491 阅读 · 0 评论 -
hashmap选择红黑树,为啥hashmap不直接采用红黑树,为什么达到8个才转红黑树
为什么直接采用红黑树因为红黑树需要进行左旋,右旋操作, 而单链表不需要,主要考察链表和红黑树对比:1)如果元素小于8个,查询成本高,新增成本低2)如果元素大于8个,查询成本低,新增成本高HashMap在jdk1.8之后引入了红黑树的概念,表示若桶中链表元素超过8时,会自动转化成红黑树;若桶中元素小于等于6时,树结构还原成链表形式。原因: 红黑树的平均查找长度是log(n),长度为8,查找长度为log(8)=3,链表的平均查找长度为n/2,当长度为8时,平均查找长度为8/2=4,这才有转换.转载 2020-06-16 16:31:39 · 5268 阅读 · 0 评论 -
@NotEmpty、@NotNull、@NotBlank区别
三者总结:@NotEmpty :不能为null,且Size>0,@NotEmpty注解的String、Collection、Map、数组是不能为null或长度为0@NotNull:不能为null,但可以为empty,没有Size的约束,带注释的元素不能为null。接受任何类型@NotBlank:只用于String,不能为null且trim()之后size>0,纯空格的String也是不符合规则的,此注解只能用于验证String类型做个记录...原创 2020-06-09 18:16:54 · 670 阅读 · 0 评论 -
Java 代码精简之道 (中)
1.利用自身方法1.1.利用构造方法构造方法,可以简化对象的初始化和设置属性操作。对于属性字段较少的类,可以自定义构造方法。普通:@Getter@Setter@ToStringpublic class PageDataVO<T> { private Long totalCount; private List<T> dataList;}PageDataVO<UserVO> pageData = new PageDataVO<>转载 2020-06-03 18:22:57 · 612 阅读 · 0 评论 -
lombok @setter @getter遇到坑,参数赋值为null
背景最近在做项目时,使用springboot,lombok技术,请求体有个字段为“sId”,前端已经赋值了,但后端接收时,sid总是为空。追踪 HttpServletRequest是有值的,百思不得其解。后来问同事,才晓得中原由,仅此做些记录原因进过反编译查询查看,lombok和idea快捷键生成set和get方法不一样导致。@Setter@Getterpublic class LombokTest { private String sId;}使用lombok反编译如下:pu原创 2020-06-03 16:26:48 · 3631 阅读 · 2 评论 -
Java 代码精简之道 (上)
1.利用语法1.1.利用三元表达式普通:String title;if (isMember(phone)) {title = “会员”;} else {title = “游客”;}精简:String title = isMember(phone) ? “会员” : “游客”;注意:对于包装类型的算术计算,需要注意避免拆包时的空指针问题。1.2.利用 for-each 语句从 Java 5 起,提供了 for-each 循环,简化了数组和集合的循环遍历。for-each 循环允许你转载 2020-06-02 11:13:49 · 253 阅读 · 0 评论 -
fastjson判断一个json是jsonArray还是jsonObject几种方式
1.字符串截取判断使用字符串开始位置和结束位置 public static void main(String[] args) { String dataStr = "['ces':'dd']"; if (dataStr.startsWith("[") && dataStr.endsWith("]")) { System.out.println("我是jsonArray"); } else {原创 2020-05-22 09:46:56 · 5729 阅读 · 0 评论