spring data cassandra 将 null 映射为空列表

spring data cassandra maps null as empty List

我有以下 dto 对象:

public class Data {

    @PrimaryKey private EntityKey key;

    @Column("r_proposals")
    private List<Integer> rProposals;

}

现在,当我尝试在 cassandra 中序列化此对象并将 rProposals 设置为 null(使用 cassandraTemplate::insert)时,它被存储为空列表:

有人知道如何覆盖此行为并将集合设置为 null 如果传入 null 吗?

我们使用spring boot 2.4.3; spring 数据卡桑德拉 3.1.5

Cassandra 不区分空集合和 null。

插入时,无论您使用哪一个都没有关系,它最终将以完全相同的方式存储在数据库级别。

阅读时,大多数驱动程序(包括 Spring Boot 使用的驱动程序)通常更喜欢使用空集合而不是 null,以避免 NPE。

简而言之,这种行为是正常的,您不必担心。