Java DataStax访问器bean作为绑定参数
我正在尝试使用datastax访问器(vs使用映射器) 我的访问者定义如下:Java DataStax访问器bean作为绑定参数,java,cassandra,cql3,datastax,datastax-java-driver,Java,Cassandra,Cql3,Datastax,Datastax Java Driver,我正在尝试使用datastax访问器(vs使用映射器) 我的访问者定义如下: @Accessor public interface TableAccessor { @Query( "INSERT INTO tableName " + "(id, data)" + "VALUES (:beanId, :beanData)") public ResultSet insertProblem(@Param("bean") Bean bean
@Accessor
public interface TableAccessor {
@Query(
"INSERT INTO tableName " +
"(id, data)" +
"VALUES (:beanId, :beanData)")
public ResultSet insertProblem(@Param("bean") Bean bean);
我的bean被定义为
@Table(name="tableName")
public class Bean {
@PartitionKey
@Column(name = "id")
private int beanId;
@PartitionKey
@Column(name = "data")
private Date beanData;
// Setters and getters omitted
}
我的问题是,当我尝试以下方法时:
insertProblem(@Param("bean") Bean bean)
我不断收到错误,告诉我参数不匹配。我甚至不确定是否可以发送对象并映射该对象的属性(可能是一些点符号,但没有检查代码或文档)。如果您使用
UDT
并且将Bean
作为数据库中的UDT,那么您的符号可能会起作用
可以肯定的是:
@Accessor
public interface TableAccessor {
@Query(
"INSERT INTO tableName " +
"(id, data)" +
"VALUES (:beanId, :beanData)")
public ResultSet insertProblem(@Param("beanId") int beanId, @Param("beanData") Date beanData);
您可以使用insertProblem调用方法(bean.getBeanId(),bean.getbeanada())