我正在尝试使用数据存取访问器(vs使用映射器)。
我的访问者定义如下:
@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)
我不断收到错误,告诉我我的参数号码不匹配。
答案 0 :(得分:1)
我不确定是否可能,发送对象和映射该对象的属性(可能是一些点符号,但没有检查代码或文档)。如果你使用UDT
并且你在DB中有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.getBeanData())