java
文章平均质量分 55
子♂衿
人生的意义又是什么呢?
展开
-
记一次调第三方接口反序列化时容易出现且忽略的问题且很难排查
出现问题在完成上周工作时有一个接口出现了一个 empty string异常,刚开始还以为是我项目没重启导致的(因为我确信我的业务代码没有问题),然而事情并没有我想象中的简单。首先来看这个异常是在feign的解码器中抛出来的异常,解码失败了,说什么是空字符串,我还以为是第三方接口返回了一个空字符串?然后又调试,发现第三方接口返回的内容没有问题, 然后我就懵逼了然后我只能说服自己要坚强,接下来就一步一步调异常是在 feign解码时抛出来的,那好,我们在这里下个断点发现是在进行json反序列原创 2021-08-09 10:23:47 · 312 阅读 · 1 评论 -
分享一个关于类加载类初始化的面试题的坑
public class Test { private static final Test INSTANCE = new Test(); private static int x = 0; private static int y; public Test() { x++; y++; } public static Test getInstance() { return INSTANCE; }原创 2021-03-02 17:40:04 · 10295 阅读 · 1 评论 -
finally这样写会吞掉异常?
在finally中写return语句最终会造成吞掉异常的后果从JVM指令层面来看可以看到 如果从 0 到 9 (不包含9) 出现了任何异常都会跳转到 8的位置而接下来所做的,仅仅只把异常对象存储到了局部变量表中的0号位置,接着把30放入栈顶就返回了期间丢失了 athrow指令,所以不会有任何异常堆栈的显示,所以在开发中最好不要在finally 中写return语句,否则会吞噬异常...原创 2020-07-19 14:44:56 · 10639 阅读 · 2 评论 -
使用Optional的orElse()重复执行问题
使用Optional.orElse(T other)方法产生的问题问题复现:Optional.orElse(T other)方法的原本作用是,如果Optional中的value为null的话,则返回orElse(T other)方法中的 “other” 这个值现有代码如下 public static List<String> test(){ return Optional.ofNullable(a()).orElse(b()); } pub原创 2020-05-11 14:31:12 · 11738 阅读 · 0 评论