在Spring Data Cassandra中设置默认值

时间:2017-11-01 13:37:04

标签: java spring spring-data spring-data-cassandra

基本上我想知道,如果得到空值,我如何设置Pojo变量的默认值?

我在项目中使用Spring-data-Cassandra。布尔列中的某些条目具有 null ,当我从数据库中获取记录时,它会抛出错误:

  

布尔值不能为空

即使我遇到与int / long / double ...列相同的问题。

所以当数据库的列为空时,我想给这些字段一个默认值。

这是我希望的最后一个例子:

@Column(default = "UNKNOWN")
private String name;

@Column(default = -1)
private int age;

// or

private String name = "UNKNOWN";
private int age = -1;

我了解了Converter / Mapping / TypeDecode ......但我什么都没有。

请帮帮我。

2 个答案:

答案 0 :(得分:1)

我认为你在建筑方面有一些错误。如果你不能在POJO中接受null,那么空值如何到达DB?可能你必须接受来自DB的空值吗?

无论如何,您可以创建setter并使用这些方法中的默认值设置null checker。

答案 1 :(得分:0)

使用@AccessType annotation确保Spring Data通过setter和getter访问属性。然后,您可以将null值的转换设置为设置器中的默认值。当然,制定者需要接受盒装类型。不确定,如果这意味着字段也必须是盒装类型。