java
gq0811
这个作者很懒,什么都没留下…
展开
-
leetcode2492. 两个城市间路径的最小分数
给你一个正整数 n ,表示总共有 n 个城市,城市从 1 到 n 编号。又因为题目里说“保证城市 1 和城市n 之间 至少 有一条路径”,所以1,n一定在一个连通图里,那么此时这个图里的最短路径就是问题答案。所以思路到这就比较明确了,可以用并查集的思想,把原始图做分组,然后找到1所在的组,求得最小值。一条路径可以 多次 包含同一条道路,你也可以沿着路径多次到达城市 1 和城市 n。两个城市之间一条路径的 分数 定义为这条路径中道路的 最小 距离。城市 1 和城市 n 之间的所有路径的 最小 分数。原创 2023-02-01 21:31:48 · 147 阅读 · 0 评论 -
递归解析json
/** * 递归解析json * 本身是json格式,或经过parse之后是json格式。要对子元素递归解析 */public static Object stringToJson(Object json){ try{ if(json==null){ return json; } //数值类型的,直接返回 ...原创 2020-05-07 12:32:06 · 830 阅读 · 0 评论 -
SpringAOP-2.日志管理和代码追踪
项目现状:1.logback配置了9种appender,在LogUtil中对日志做开关控制。(1)优点:这样分散了日志压力,毕竟全打在一个文件,会给排查带来很多麻烦。(2)缺点:但是带来问题也很明显,在打日志的时候,要给每一条日志加开关,这个重复工作量较大,也会影响代码整洁性。解决思路:2.所以在调研了AOP的功能之后,决定从两方面下手来做日志管理:(1)日志收敛,统一加开...原创 2019-08-04 19:05:32 · 192 阅读 · 0 评论 -
fastjson源码分析(番外篇):一个偶然发现的反序列化“bug”
背景 项目中,有一个需求是需要传递一些数据到别的项目方,如果是基本类型或者java自带的类,那么可以直接传递对应的对象,如果是目标项目的类,那么传递json字符串,所以就有了下面这段测试代码:package test;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.TypeReference;imp...原创 2019-07-15 00:43:48 · 2349 阅读 · 0 评论 -
fastjson源码分析 (一):序列化
fastJson是很常用的序列化工具,用了这么久一直想底层看一下它的设计,探究一下它序列化和反序列化效率高的秘密。现在从最基础的用法开始,一点点揭开fastJson神秘的面纱。(版本:1.2.50)实际工程里,最常用的就是序列化和反序列化:ResultDO resultDO = new ResultDO();String jsonStr = JSON.toJSONString(re...原创 2019-07-07 18:40:56 · 1382 阅读 · 0 评论 -
Http和RPC的选择
在解决应用间通信的问题上,常见的两种方式就是http请求和HSF、dubbo这种RPC框架(以HSF为例)。 直观的感受来讲,规模较大的应用群会选用RPC框架,而很多小规模应用会采用简单的http来维护多应用之间的通信。最开始接触的是http服务,现在项目主体采用的都是HSF服务,部分会用http。 对两者的认识如下: 1.首先,RPC是一种框架,它可以有很多实现方式,可以...原创 2019-05-19 23:57:18 · 1052 阅读 · 0 评论 -
HashMap的线程不安全分析
大家都知道hashMap是线程不安全的,concurrentHashMap是线程安全的,而具体的原因可能还不是很清楚。现在先来分析一下hashMap的代码:(jdk 1.8)jdk在到1.8的时候多了很多新特性,hashmap也做了很多改动,由之前的数组+链表的模式,变成了数组+链表或数组+红黑树的模式。原因可想而知,当hash冲突增多的时候,长长的链表挂在一个数组节点上,这时候的get操...原创 2018-12-02 18:53:22 · 867 阅读 · 0 评论 -
JSON转义的问题
1.序列化循环引用的问题(1)一般情况下,是被序列化对象中,有多处引用了同一个数据,类似于下面这种:"receiver": { "$ref": "$[0].buyer"},或者在传到前端的时候,会有类似的情况:"$ref":"$.map.monthFinishRed[5]"就是receiver引用buyer字段的内容,此时的JSON对象保存的receiver是指向...原创 2018-12-02 15:51:36 · 1306 阅读 · 0 评论