在项目中,使用了MyBatis的延迟加载。将查出来的对象进行序列化时,fastjson会调用成员变量的getter方法,会触发延迟加载。
解决:在对象响应字段前加注解,这样生成的json也不包含该字段。例如:
public class User {
private Integer id;
private String name;
@JSONField(serialize = false)
private String address;
public User() {
}
/* 省略getter和setter方法 */
}