ObjectMapper.readValue转换实体类
在项目中使用ObjectMapper.readValue转换实体类,在某个实体类中,有个属性changeProperties,是Set<Entity>,转换后,changeProperties的值个数总是只有1个。排查了很久,尝试了很多方法,最后发现Entity这个类重写了equals和hashCode,用id来计算hashCode和equals。而id属性的值又刚好都为null,于是
·
在项目中使用ObjectMapper.readValue转换实体类,在某个实体类中,有个属性changeProperties,是Set<Entity>,转换后,changeProperties的值个数总是只有1个。
排查了很久,尝试了很多方法,最后发现Entity这个类重写了equals和hashCode,用id来计算hashCode和equals。而id属性的值又刚好都为null,于是修改equals和hashCode方法,将方法中的计算,改为用其他百分百有值的属性。
修改后重启,转换成功了,changeProperties的值个数正常了。
更多推荐
已为社区贡献1条内容
所有评论(0)