Spring DataCouchbase使用_class字段的目的是什么?

Spring DataCouchbase使用_class字段的目的是什么?,spring,spring-data,couchbase,spring-data-couchbase,Spring,Spring Data,Couchbase,Spring Data Couchbase,我猜该类型用于CRUD操作。除此之外还有其他用途吗?我想知道配置如何填充会有什么影响 编写\u class字段是为了在域模型中允许多态属性。请参见此示例: class Wrapper { Object inner; } Wrapper wrapper = new Wrapper(); wrapper.inner = new Foo(); couchbaseOperations.save(wrapper); 您可以看到字段internal将如何得到Foo序列化和持久化。在阅读方面,我们现

我猜该类型用于CRUD操作。除此之外还有其他用途吗?我想知道配置如何填充会有什么影响

编写
\u class
字段是为了在域模型中允许多态属性。请参见此示例:

class Wrapper {
  Object inner;
}

Wrapper wrapper = new Wrapper();
wrapper.inner = new Foo();

couchbaseOperations.save(wrapper);
您可以看到字段
internal
将如何得到
Foo
序列化和持久化。在阅读方面,我们现在必须找出创建对象的类型,
Wrapper
中的类型信息不足以做到这一点,因为它只声明
object

这就是为什么Spring数据对象映射会保留一个附加字段(名称可自定义,但默认为
\u class
)来存储该信息,以便能够检查源文档,从为该字段编写的值派生类型,并最终将该文档映射回该特定类型

SpringDataCouchbase参考文档并没有真正记录它,您可以在中找到有关其工作方式的信息。我还为SpringDataCouchbase创建了一些文档,以改进这些文档