Spring有一个BeanPropertyRowMapper
从select中抽取SQL并映射到POJO对象,而不必创建自定义行映射器。我希望同样的但是插入声明。但是我找不到同等的东西。
public boolean addRenewalQuote(Quote quote) {
String sql = "INSERT INTO Customers (internal_order_number, b_email, s_email, b_firstname) VALUES (?, ?, ?, ?);";
if(getTemplate().update(sql, quote) > 0) {
return true;
}else {
return false;
}
}
引号字符串名称已与DB中的列匹配。实际的插入非常大,我希望有一种比单独获取每个引用getter并将其传递给更新方法更快的方法。
答案 0 :(得分:0)
有点,但您必须访问pojo的成员变量,如下所示:
Object[] args = new Object[] {quote.getOrderNumber(), quote.getBEmail(), quote.getSEmail(), quote.getFirstName()};
int[] types = new int[] {Types.VARCHAR, Types.VARCHAR, Types.VARCHAR, Types.VARCHAR};
getTemplate().update(sql, args, types};
不要忘记相应地更改args数组和类型数组。
另外,您可以在文档here中阅读更多内容。