我正在寻找如下创建模型,如何在spring-data-cassandra中使用用户定义的类型?
{
email: "test@example.com",
name: {
fname: "First",
lname: "Last"
}
}
Spring Data Cassandra现在支持用户定义的数据类型。最新版本1.5.0.RELEASE使用Cassandra Data stax驱动程序3.1.3,因此现在可以工作。请按照以下步骤操作
如何在Spring Data Cassandra中使用UserDefinedType(UDT)功能:
组:“ org.springframework.data”,名称:“ spring-data-cassandra”,版本:“ 1.5.0.RELEASE”
datastax.cassandra.driver.version = 3.1.3 spring.data.cassandra.version = 1.5.0.RELEASE spring.data.commons.version = 1.13.0.RELEASE spring.cql.version = 1.5.0.RELEASE
地址数据类型
CREATE TYPE address_type (
id text,
address_type text,
first_name text,
phone text
);
CREATE TABLE employee(
employee_id uuid,
employee_name text,
address frozen,
primary key (employee_id, employee_name)
);
@Table("employee")
public class Employee {
-- othere fields--
@CassandraType(type = DataType.Name.UDT, userTypeName = "address_type")
private Address address;
}
@UserDefinedType("address_type")
public class Address {
@CassandraType(type = DataType.Name.TEXT)
private String id;
@CassandraType(type = DataType.Name.TEXT)
private String address_type;
}
@Bean public CassandraMappingContext mappingContext() throws Exception {
BasicCassandraMappingContext mappingContext = new BasicCassandraMappingContext();
mappingContext.setUserTypeResolver(new
SimpleUserTypeResolver(cluster().getObject(), cassandraKeyspace));
return mappingContext;
}
用户定义的类型在任何地方都应具有相同的名称。例如
@UserDefinedType("address_type")
@CassandraType(type = DataType.Name.UDT, userTypeName = "address_type")
CREATE TYPE address_type
我对卡桑德拉的数据建模有一个疑问,希望能在这里提出一些建议。 我们正在尝试构建一个多租户应用程序,我们希望数据结构由用户定义。用户可以定义数据源、字段数量、数据类型、顺序等,然后基于此结构上载数据。既然Cassandra不支持混合数据类型列表,我们如何在Cassandra之上设计这样的应用程序呢。当前集合类型为映射(相同类型)/集/列表(相同类型)。此外,是否可以基于用户定义的实体查询数据? 目前
我有一个实体Person,它有一个属性Name。name没有被标记为实体。对于Name类,我有一个属性转换器,它通过名字和姓氏的字符串连接创建一个全名。所以对于个人实体,列名是字符串类型。 这是可行的。但现在我想扩展我的个人存储库。我想按她的姓找人。但是 或 不起作用。我得到以下例外: 我怎样才能解决这个问题?谢谢和问候 编辑:
问题内容: 就像我们使用__ToString一样,有没有一种方法来定义铸造方法? 问题答案: 无需在php中键入强制类型转换。 编辑: 由于这个话题似乎引起一些混乱,我想我要详细说明一下。 在Java之类的语言中,有两种可能带有类型。编译器有一个关于类型的概念,而运行时还有一个关于类型的想法。编译器的类型与变量相关,而运行时引擎则跟踪值的类型(已将其分配给变量)。变量类型在编译时是已知的,而值类型
问题内容: 假设我有一个用户定义的类型: 现在,我想创建一个表来保存这些类型。我可以执行以下操作: 这给了我一张只有一列的表格test_type_field。 有没有一种简单而自动化的方法来代替,以创建一个表,使其具有2列f1和f2?。这样就等同于编写: 问题答案: 你有没有尝试过:
有时候需要自定义实现一些repository的新方法。Spring Data repositories允许你很容易集成你自己实现的repostiroy功能,包括抽象的CRUD和查询功能
问题内容: 是否可以在SQL中的另一个用户定义表类型(嵌套的用户定义表类型)中使用用户定义的表类型。 我有高级发送表中的行的数据表。 请帮助如何将表行中的表数据从 asp.net发送到sql 。通过循环还是有任何简单的方法将嵌套表数据发送到服务器。 问题答案: 不,为什么会这样?这不是SQL Server(或任何关系数据库)的工作方式。 从TechNet的“用户定义的表类型”页面上: 限制 用户定