Spring数据Cassandra 1.3.2.RELEASE是否支持UDT注释?
Spring数据Cassandra 1.3.2.RELEASE支持@UDT()吗?如果没有,我如何为此添加解决方案 谢谢请参见此处的详细信息: 我面临着同样的问题,但听起来似乎不是( 调试过程向我展示了spring数据cassandra检查 @表,@Persistent或@PrimaryKeyClass仅用于注释并引发异常 在其他情况下 > 调用init方法失败;嵌套异常为org.springframework.data.cassandra.mapping.VerifierMappingExceptions: Cassandra实体必须具有@Table、@Persistent或@PrimaryKeyClass注释 但我找到了解决办法。 我找到了允许我管理包含UDT和不包含UDT的实体的方法。在我的应用程序中,我使用spring cassandra数据项目,并使用direct datastax核心驱动程序。不包含UDT对象的存储库使用spring cassanta数据方法,包含UDT的对象使用自定义repositori锿。 自定义存储库使用datastax映射器,并且可以与UDT正确配合使用 (它们位于单独的软件包中,请参见下面的注释,说明需要它的原因): 请注意,以下实体使用不同的注释:Spring数据Cassandra 1.3.2.RELEASE是否支持UDT注释?,cassandra,spring-data-cassandra,cassandra-2.1,Cassandra,Spring Data Cassandra,Cassandra 2.1,Spring数据Cassandra 1.3.2.RELEASE支持@UDT()吗?如果没有,我如何为此添加解决方案 谢谢请参见此处的详细信息: 我面临着同样的问题,但听起来似乎不是( 调试过程向我展示了spring数据cassandra检查 @表,@Persistent或@PrimaryKeyClass仅用于注释并引发异常 在其他情况下 > 调用init方法失败;嵌套异常为org.springframework.data.cassandra.mapping.VerifierMappingExc
@PrimaryKeyColumn(name = "account_id", ordinal = 0, type = PrimaryKeyType.PARTITIONED)and @PartitionKey
@ClusteringColumn and @PrimaryKeyColumn(name = "area_parent_id", ordinal = 2, type = PrimaryKeyType.CLUSTERED)
乍一看,这很不舒服,但它允许您处理包含UDT和不包含UDT的对象
一个重要的注意事项是,两个repo(使用UDT和不使用UDT的应该位于不同的包中)导致Spring config查找带有repo的基本包:
@Configuration
@EnableCassandraRepositories(basePackages = {
"com.fyb.cassandra.repositories" })
public class CassandraConfig {
..........
}
详情如下:
我面临着同样的问题,但听起来似乎不是(
调试过程向我展示了spring数据cassandra检查
@表,@Persistent或@PrimaryKeyClass仅用于注释并引发异常
在其他情况下
>
调用init方法失败;嵌套异常为org.springframework.data.cassandra.mapping.VerifierMappingExceptions:
Cassandra实体必须具有@Table、@Persistent或@PrimaryKeyClass注释
但我找到了解决办法。
我找到了允许我管理包含UDT和不包含UDT的实体的方法。在我的应用程序中,我使用spring cassandra数据项目,并使用direct datastax核心驱动程序。不包含UDT对象的存储库使用spring cassanta数据方法,包含UDT的对象使用自定义repositori锿。
自定义存储库使用datastax映射器,并且可以与UDT正确配合使用
(它们位于单独的软件包中,请参见下面的注释,说明需要它的原因):
请注意,以下实体使用不同的注释:
@PrimaryKeyColumn(name = "account_id", ordinal = 0, type = PrimaryKeyType.PARTITIONED)and @PartitionKey
@ClusteringColumn and @PrimaryKeyColumn(name = "area_parent_id", ordinal = 2, type = PrimaryKeyType.CLUSTERED)
乍一看,这很不舒服,但它允许您处理包含UDT和不包含UDT的对象
一个重要的注意事项是,两个repo(使用UDT和不使用UDT的应该位于不同的包中)导致Spring config查找带有repo的基本包:
@Configuration
@EnableCassandraRepositories(basePackages = {
"com.fyb.cassandra.repositories" })
public class CassandraConfig {
..........
}
Spring data Cassandra现在支持用户定义的数据类型。最新版本1.5.0.release使用Cassandra data stax驱动程序3.1.3,因此它现在可以工作。按照以下步骤使其工作 如何将UserDefinedType(UDT)功能与Spring数据结合使用Cassandra:
CREATE TYPE address_type (
id text,
address_type text,
first_name text,
phone text
);
- @用户定义类型(“地址类型”)
- @CassandraType(type=DataType.Name.UDT,userTypeName=“address\u type”)
- 创建类型地址\u类型
Spring data Cassandra现在支持用户定义的数据类型。最新版本1.5.0.release使用Cassandra data stax驱动程序3.1.3,因此它现在可以工作。按照以下步骤使其工作 如何将UserDefinedType(UDT)功能与Spring数据结合使用Cassandra:
@Configuration
@EnableCassandraRepositories(basePackages = {
"com.fyb.cassandra.repositories" })
public class CassandraConfig {
..........
}
CREATE TYPE address_type (
id text,
address_type text,
first_name text,
phone text
);