在hiberante中将null替换为字符串

时间:2020-04-15 14:11:00

标签: java gson

我有下面的字符串输出:

["Kolkata","data can be, null",null,"05/31/2020",null]

但是我想在Java中获得如下格式的输出

["Kolkata","data can be, null","","05/31/2020",""]

请帮助我。

我正在将对象转换为json数据。请查看以下代码

List<String> test = new ArrayList<>();
List<Object[]> data =query.list();          
for (int i = 0; i < data.size(); i++) {
    Object[] row = (Object[]) data.get(i);

    String  jsonString = gson.toJson(row);
    test.add(jsonString);
} 

我想使用Java 7将其应用于jsonString变量,而不是不使用Java 8

2 个答案:

答案 0 :(得分:1)

Gson不允许您更改字符串的序列化形式。

更改对象可能更好->在序列化之前用空字符串替换null。

答案 1 :(得分:0)

您可以使用另一个for循环用数组内的空字符串替换每个空值。这是一个将执行相同操作的示例。

Object[] row = new Object[]{"Kolkata","data can be, null",null,"05/31/2020",null};
for (int i = 0; i < row.length; i++) {
    if (row[i] == null) {
        row[i] = "";
    }
}