【随笔--杂记】
文章平均质量分 72
日常问题记录
码农爱java
好记性不如烂笔头,记录技术点滴,保持热爱。come on!
展开
-
Java 中树结构的组装分享
很明显双层 for 循环构建树的效率远低于 map 遍历构建树,因此我们推荐使用 map 遍历的方式来构建树结构,而且从代码层面来看,map 遍历方式的代码也比 for 循环看起来更简洁,因此建议使用 map 遍历构建树。树结构组装,其实就是从数据库取出一组数据,去找到他们之间的父子关系,通畅都会需要遍历处理,以下我们分享递归、双层 for 循环、map 遍历构建树结构。递归就是从顶级节点一直往下查询,期间需要不停地查询数据库,不推荐递归来组装树结构,这里也就不做演示了。原创 2024-04-28 10:30:00 · 252 阅读 · 0 评论 -
字符串转换为List<String>时候抛出异常:com.alibaba.fastjson2.JSONException: TODO : s
前面的错误代码中,不应该使用 obj.toString(),我这里的 obj 对象本质就是一个 List 对象,使用 obj.toString() 后,就完完全全变成了一个字符串了,再使用fastjson 转换为 List,这肯定是会出错的,因此我们只需要把对象转换为 JSONString,然后再使用 fastjson 转换为 List 即可。项目中需要对第三方接口返回的字符串转换为 List,就想到了使用 fastjson 来处理。一看人都啥了,啥呀,这都啥呀。如有错误的地方欢迎指出纠正。原创 2024-04-14 10:30:00 · 406 阅读 · 0 评论 -
CORS 跨域问题解决&&预检(OPTIONS)请求解释
浏览器使用 OPTIONS 方法发起一个预检请求(preflight request),来感知服务端是否允许该跨域请求,服务器确认允许之后,才发起实际的 HTTP 请求,OPTIONS 请求没有附带请求数据,响应体也为空,简单来说就是一种探测,这就是预检请求,是浏览器的一种保护机制。简单请求的对立面就是非简单请求,也就是说不能同时满足简单请求条件的请求就是非简单请求,就可能会触发预检(OPTIONS)请求。Nginx 增加配置解决跨域问题,只使用一种解决问题即可,不要同时配置多个。原创 2024-04-15 09:30:00 · 1211 阅读 · 0 评论 -
Java异常信息中只打印NullPointerException却不输出堆栈信息的原因
排查线上问题的时候,发现一直在报空指针的错误信息,但是只有错误名称:NullPointerException。没有堆栈信息,不显示行号,只能盲猜。根本不知道哪一行报错,报错的原因是什么。查看了代码打印日志的方式,没有问题,如此就需要先想办法,让程序将堆栈信息打印出来,或者找到报错的堆栈信息才是解决问题的正确思路,这样一来就变成了两个问题。我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:撤销:Ctrl/Command原创 2024-02-07 15:31:11 · 1386 阅读 · 1 评论