Spring3+hibernate3 在dao层使用Query的executeU?400报错-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

Spring3+hibernate3 在dao层使用Query的executeU?400报错

爱吃鱼的程序员 2020-05-31 00:40:57 79

Spring3+hibernate3 在dao层使用Query的executeUpdate不回滚? 400 报错

Dao层

@Override

public int updateRetrailState(Integer orsa_id, int srcState,
int targetState, String userName) {
String hql="update RBSaleruoverapp ap set ap.oroaState = :oroaState ,ap.oroaReviewnametwo=:oroaReviewnametwo where ap.oroaId=:oroaId and ap.oroaState = :checkOroaState";
Session session=getSession();
// Transaction transaction= session.beginTransaction();
Query query= session.createQuery(hql);
query.setParameter("oroaState", RBSaleruoverapp.STATE_REPEATED);
query.setParameter("oroaReviewnametwo", userName);
query.setParameter("oroaId", orsa_id);
query.setParameter("checkOroaState", RBSaleruoverapp.STATE_FIRST);
int i = query.executeUpdate();
System.out.println("修改完毕");
// transaction.rollback();
return i;

}

service层出错不回滚,但是在sessionFactory.getCurrentSession().saveOrUpdate()方法就可以回滚为什么?

分享到
取消 提交回答
全部回答(1)
  • 爱吃鱼的程序员
    2020-05-31 00:40:58

    配置事物没有?getCurrentSession()获取session要配置:    <prop key="hibernate.current_session_context_class">org.springframework.orm.hibernate4.SpringSessionContext
        </prop>######问题不晓得我用传统的xml配置就可以...

    0 0
云计算
使用钉钉扫一扫加入圈子
+ 订阅

时时分享云计算技术内容,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

推荐文章