Java-自动将所有空字符串设置为空字符串

Java-自动将所有空字符串设置为空字符串,java,string,Java,String,我的程序从外部源获取数据,并将其设置为我自己创建的POJO类。一些外部数据返回null,而其他数据返回空字符串。外部数据有一些不一致性,这就是为什么我想标准化程序的这一部分 我正在使用JavaJersey创建一个Web服务,使用GoogleGSON将这些POJO类转换为json。如果字符串值为null,gson不会将成员变量设置为返回json字符串。这将使使用webservice的开发人员感到困惑,因为有些记录没有特定的变量。我可以在每个pojo setter中编写一些代码来检查null并将其设

我的程序从外部源获取数据,并将其设置为我自己创建的POJO类。一些外部数据返回null,而其他数据返回空字符串。外部数据有一些不一致性,这就是为什么我想标准化程序的这一部分

我正在使用JavaJersey创建一个Web服务,使用GoogleGSON将这些POJO类转换为json。如果字符串值为null,gson不会将成员变量设置为返回json字符串。这将使使用webservice的开发人员感到困惑,因为有些记录没有特定的变量。我可以在每个pojo setter中编写一些代码来检查null并将其设置为空字符串。但我将介绍样板代码

在eclipse中,我尝试使用代码模板检查setter中的空字符串,并将其转换为空字符串

if (${param} instanceof String)
    ${field} = (${param} == null ? "" : ${param});    
else
    ${field} = ${param};
但是,如果输入类型是int,这将不起作用

我可以为字符串输入自定义代码模板吗?
是否有其他方法可以自动执行此操作?

您只需为int类型输入编写单独的代码。
尝试对(int和String)类型的请求使用一些过滤条件


int不能转换为字符串。字符串优先级高于int。

这听起来像是一个全局设置的糟糕主意。为什么要用空字符串替换空字符串,尤其是不要使用
可选的
?您根本不想这样做。空行和文件结尾之间有很大区别。空的JSON值比完全忽略属性更容易混淆,效率更低,这就是GSON的行为方式。如果字符串真的有一个默认值,那么在POJO类中设置该值。嗨,我在POJO类中声明时为成员变量初始化了一个默认值。我的程序从外部源获取数据,并将其设置为我自己创建的POJO类。一些外部数据返回null,而其他数据返回空字符串。外部数据有一些不一致性,这就是为什么我想标准化程序的这一部分。您应该让GSON序列化JSON中的
null
值,而不是在代码中提供这种解决方法。如果这是不可能的(我强烈怀疑),你可能应该考虑使用杰克逊或其他一些JSON库。嗨,你能详细说明吗?您的意思是在eclipse模板中编写单独的代码吗?任何示例代码或步骤?什么是“字符串优先级”?这里的优先级,我的意思是说字符串是对象类型,int是基元类型。所以int不能转换为String。