日期:2014-05-19  浏览次数:20762 次

关于spring3更新数据,获取更新多少行的问题【JPA】

//项目使用spring注解式事物,在service调用dao,dao操作数据库,事物在service控制

service方法片段

@Transactional(readOnly = false)
public String withdrawFail(){
//在这个方法里面要获取到数据库连接,执行个更新操作,获取更新影响的行

}



dao方法片段
private EntityManager em;
public int updateAmountAndPayBackAmtByIdAndAmount(){
//因为用的是jpa,没有找到现成方法可以带条件更新,并且返回响应多少行
//所以想在这里获取数据库连接,自己执行更新sql

}


求解~

------最佳解决方案--------------------
//如果是JPQL
Query query = em.createQuery(executeJPQL);

//如果是纯SQL
Query query = em.createNativeQuery(executeSQL);

//影响的行数
int rows = query.executeUpdate();