基本上我想知道,如果得到空值,如何将默认值设置为 Pojo 变量?
我在我的项目中使用 Spring-data-Cassandra。布尔列中的某些条目具有 null,当我从数据库中获取记录时,它会抛出错误:
布尔值不能为空
即使我在int
/long
/double
方面也面临同样的问题......列。
所以我想在数据库的列为 null 时给这些字段一个默认值。
这是我希望的最后一个例子:
@Column(default = "UNKNOWN")
private String name;
@Column(default = -1)
private int age;
// or
private String name = "UNKNOWN";
private int age = -1;
我已经了解了Converter
/Mapping
/TypeDecode
...但我什么都没有。
请帮助我。
我认为你在建筑上有一些错误。如果你不能在POJO中接受null,那么null值是如何到达DB的?您可能必须接受来自数据库的空值?
无论如何,您可以在这些方法中创建设置器并使用设置默认值来制作空检查器。
使用 @AccessType
注释来确保 Spring Data 通过 setter 和 getter 访问属性。然后,您可以将从null
值转换为默认值的设置器中。当然,二传手需要接受盒装类型。不确定,这是否意味着字段也必须是装箱类型。