一般是把事务加在dao层还是service层?如果是加在dao层,是不是调用注入了某个dao的所有service中某一个的任何一个方法执行失败,所有service都回滚?那么就一般是把事务加在service层而不是dao层了吧

解决方案 »

  1.   

    service层DAO是对数据库的操作
    sercice 是对DAO的操作,service执行多个DAO实现复杂的业务逻辑 是所有DAO回滚eg:DAO1 boolean insert(Connection con, User vo)
         DAO2 boolean  update(Connection con, User vo)
    service edit(User vo ){
    //连接池获得 
    con = U.getCon();
    //取消自动提交
    con.setAutoCommit(false);
    noolean a = new DAO1().insert();
    boolean b = new Dao2().update();
    //a b都操作成功
    if(a&&b){
    //提交
    con.commit();
    }}
      

  2.   

    DAO 对数据库的操作.
    sercice层才设计具体的逻辑事务