发现了 lombok 一个奇怪的 bug

查看 75|回复 2
作者:mohulai   
@Getter
@Setter
public class BarChart {
public List xLines;
public List yLines;
}
就一个简单的 List 类
GetMapping(XXX)
public Result getData(){
BarChart barChart=new BarChart();
barChart.set(XXXX);
barChart.set(YYYY);
Result result=new Result();
result.setResult(barChart);
return result;
}
预期返回的结果是 xLines[],yLines[]。断点打在最后一行也可以看到 result 结果是正确的。
结果 postmanceshi 就变成了 xLines[],yLines[],xLines[],yLines[]。重复了一遍。
折腾了半天,最后请教老师傅,他把 lombok 去掉,结果就好了……
他猜是 lombok 不适合序列化,我记得以前一直用 lombok 也没遇到序列化的问题,何况这次的场景这么简单。

result, barchart, xlines, ylines

MoonWalker   
只能说老师傅能这样猜,着实有点不"老师傅",原因是你既把成员变量定义 public ,并且又加了 @getter @setter
mohulai
OP
  
@MoonWalker 卧槽 我可能是犯邪了。我无论如何,也没想过,自己会把属性设置成 public ,看了一遍又一遍,也没发现。
您需要登录后才可以回帖 登录 | 立即注册

返回顶部