baseDao 层 public long saveObject(E entity, String callerInfor) {
long pid = 0; try {
pid = (Long) this.getHibernateTemplate().save(entity);
} catch (Exception e) {
log.error(callerInfor + "\n" + e.getMessage());
throw new RuntimeException("");
} return pid;
}
Dao 层 public void save(Student entity) {
super.saveObject(entity);
}
service 层 public void saveLog(Student entityStudent,Book entityBook) {
studentDAO.save(entityStudent);
bookDAO.save(entityBook);
}
service 层 save* 都是事物自动管理出错自动回滚
为什么我在service 动保存二下save 就不行,student 和book 没有关系的两张表
刚开始报主键冲突,重启myeclipse 后没有错了
去数据库看只有第一个save 方法成功了插入一条数据,第二个没在数据库插入记录,
但是在控制台打两条hiberante 两条insert 语句都打印出来了,没有报错,
我怀疑这是二个事务把在进行第一个事务时把第二给丢了
各位大虾有遇到过吗?给俺指点指点!
long pid = 0; try {
pid = (Long) this.getHibernateTemplate().save(entity);
} catch (Exception e) {
log.error(callerInfor + "\n" + e.getMessage());
throw new RuntimeException("");
} return pid;
}
Dao 层 public void save(Student entity) {
super.saveObject(entity);
}
service 层 public void saveLog(Student entityStudent,Book entityBook) {
studentDAO.save(entityStudent);
bookDAO.save(entityBook);
}
service 层 save* 都是事物自动管理出错自动回滚
为什么我在service 动保存二下save 就不行,student 和book 没有关系的两张表
刚开始报主键冲突,重启myeclipse 后没有错了
去数据库看只有第一个save 方法成功了插入一条数据,第二个没在数据库插入记录,
但是在控制台打两条hiberante 两条insert 语句都打印出来了,没有报错,
我怀疑这是二个事务把在进行第一个事务时把第二给丢了
各位大虾有遇到过吗?给俺指点指点!
解决方案 »
- 给动态FORM赋值,空指针异常,救急
- 请问用ibatis的时候,分页需要传如第几页的参数,在sqlmap的配置文件怎么写?
- ssh 分页的问题
- javascript怎么获得动态select下拉框的值?请高手帮忙!
- DataSource域
- jbuilder写jsp中加jsp脚本<%@ page import="...."%>出错?
- 高分求:JSP或JAVA调用EXCEL打印,预览,另存功能,都半个月了一个进展也没有???
- 为什么每次运行servlet都要设置一次web.xml文件?(在线等待)
- 怎样从数据库中读取image格式的图片信息,并且把图片发到网页上来!!
- ssm整合 通过junit4测试mybatis连接数据库 出现这中错误 求解
- 这个错误信息是怎么回事啊?
- 什么错误。。。jstl jstl.jar已经加了
long pid = 0; try {
pid = (Long) this.getHibernateTemplate().save(entity);
} catch (Exception e) {
log.error(callerInfor + "\n" + e.getMessage());
throw new RuntimeException("");
} return pid;
}
public void save(Student entity) {
super.saveObject(entity);
}这里的Student是参数类型,你往里面传Book 实体怎么可能会成功
我写错了 ,不好意思public long saveObject(E entity) {
long pid = 0; try {
pid = (Long) this.getHibernateTemplate().save(entity);
} catch (Exception e) {
log.error(e.getMessage());
throw new RuntimeException("");
} return pid;
}
baseDAO<T extends Serializable> extends HibernateDaoSupportBookDAO extends baseDAO<Book>
Book save(Book entity);StudentDAO extends baseDAO<Student>
Student save(Book entity);
2·确认你的service方法通过你所谓的自动事务管理是正确的。其实我不懂你是通过何种方式进行自动事务管理的