菜单往往存在着子菜单以及父级菜单,当前台需要获取菜单数据的时候,后台通过json传输的时候往往会出现
Direct self-reference leading to cycle
错误,此时则是循环遍历造成的,看到有集中方法可以解决,但是解决后结果无外乎出现两种情况
一 该属性在序列化或者反序列的时候消失
@JsonIgnoreProperties(value={"xxx"})
这种方法 如果前段还需要使用对应的属性则不行
二 无影响,根据主键的键值进行判断 ,隔断死循环
@JsonIdentityInfo(generator = ObjectIdGenerators.PropertyGenerator.class,property = "id")这种方法不影响使用
这两个注解都是使用在类的上面,方法二好像在Jackson2.0及以后可以使用,具体没怎么探究。