不要在要序列化的dto中随便写getter方法

这是在项目中发生的真实事件

我们有一个基类的dto:
不要在要序列化的dto中随便写getter方法_第1张图片
 

当它的子类有成员变量为code,同时没有getter方法时,上述方法就会把子类的code成员变量覆盖掉,这是一个严重的问题.

所以最佳实践就是,不要随便在要序列化的dto中写getter方法.

解决方法如下:

public String getCodeOfError(){
    	if(error==null){
    		return null;
    	}
    	return error.code;
    }

 

说明:我使用的序列化 库是Jackson

 

 

你可能感兴趣的:(序列化,Jackson)