我操作数据库,有两条sql语句,都有触发器,现在运行是两条sql语句执行完了才触发,怎么能中间断一下,运行触发器再接着运行。
9 回复
代码是这样的,在三个不同的方法里sql语句,它会执行完,在执行触发器。
@At("/billconfirm/?")
@Ok("json")
public Object billConfirm(int billid, @Param("billstate")int billstate, HttpServletRequest req){
try {
xsthService.sbillConfirm(billid, billstate);
xsthService.pbillConfirm(billid, billstate);
xsthService.ksbillConfirm(billid, billstate);
return Message.success("system.success", req);
} catch (Exception e) {
e.printStackTrace();
return Message.error("system.error", req);
}
}
是每个sql方法加了事务,然后3个加了事务的sql语句执行完才触动。
这个是sql事务方法
/**
* 销售订单审核后,审核销售开单
* @throws Exception
*/
@Aop(TransAop.READ_COMMITTED)
public void ksbillConfirm(int billid, int billstate) throws Exception{
List<S_sale> sss = dao().query(S_sale.class, Cnd.where("userdef12", "=", billid));
for(S_sale ss : sss){
ss.setBillstate(billstate);
dao().updateIgnoreNull(ss);
}
}
/**
* 销售订单审核
* @throws Exception
*/
@Aop(TransAop.READ_COMMITTED)
public void sbillConfirm(int billid, int billstate) throws Exception{
S_sale s = dao().fetch(S_sale.class,Cnd.where("billid", "=", billid));
s.setBillstate(billstate);
dao().updateIgnoreNull(s);
}
是每个sql方法加了事务,然后3个加了事务的sql语句执行完才触动。
这个是sql事务方法
/**
* 销售订单审核后,审核销售开单
* @throws Exception
*/
@Aop(TransAop.READ_COMMITTED)
public void ksbillConfirm(int billid, int billstate) throws Exception{
List<S_sale> sss = dao().query(S_sale.class, Cnd.where("userdef12", "=", billid));
for(S_sale ss : sss){
ss.setBillstate(billstate);
dao().updateIgnoreNull(ss);
}
}
/**
* 销售订单审核
* @throws Exception
*/
@Aop(TransAop.READ_COMMITTED)
public void sbillConfirm(int billid, int billstate) throws Exception{
S_sale s = dao().fetch(S_sale.class,Cnd.where("billid", "=", billid));
s.setBillstate(billstate);
dao().updateIgnoreNull(s);
}
js里面没有配 ,dao.js 是这样的
var ioc = {
conf : {
type : "org.nutz.ioc.impl.PropertiesProxy",
fields : {
paths : ["config/"]
}
},
dataSource : {
type : "com.alibaba.druid.pool.DruidDataSource",
events : {
create : "init",
depose : "close"
},
fields : {
url : {java:"$conf.get('db.url')"},
username : {java:"$conf.get('db.username')"},
password : {java:"$conf.get('db.password')"},
testWhileIdle : true,
filters : "mergeStat",
connectionProperties : "druid.stat.slowSqlMillis=1000"
}
},
dao : {
type : "org.nutz.dao.impl.NutDao",
args : [{refer:"dataSource"}]
}
};
添加回复
请先登陆