古老的问题,但这里的最佳做法是什么?
我头顶的四个例子:
//================
public class POJO{
List<String> list;
}
//================
public class POJO{
List<String> list = new ArrayList<String>();
}
//================
public class POJO{
List<String> list;
public POJO(){
list = new ArrayList<String>();
}
}
//================
public class POJO{
List<String> list;
public getList(){
if (list==null)
list =new ArrayList<String>();
return list;
}
}
Run Code Online (Sandbox Code Playgroud)
我问的是因为我有客户端面向初始化为零的POJO和返回空集合的域对象,当它们查询数据库并且未命中时(但它们将插入空值).我想我需要做一个或另一个但不能决定哪个.
我正在使用 jackson 将 POJO 序列化为 CSV。我的问题是我不知道如何在序列化时省略某些字段。我不想对 POJO 进行注释,因为它会影响需要这些字段的 JSON 和 XML 序列化。例如
public class POJO {
public string field1; //required by JSON and CSV
public string field2; //only required by JSON
}
Run Code Online (Sandbox Code Playgroud)
有没有办法实现这一目标?