今天新建了一个Web Project,添加了Spring和hibernate的特性。在Spring的MVC中使用DAO保存的时候,发现数据库里没有记录,而且也不报错。很奇怪,问了群里朋友,说要配置事务。于是自己在DAO的implement类里添加了事务处理的代码,如下:
public void save(User user) {
final User UserDate = user;
transactionTemplate.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED);
transactionTemplate.execute(new TransactionCallbackWithoutResult() {
protected void doInTransactionWithoutResult(TransactionStatus status){
try {
hibernateTemplate.save(UserDate);
} catch (Exception e) {
e.printStackTrace();
status.setRollbackOnly();
}
}
});
}
还可以用Spring配置文件的方式,配置文件的方式更灵活些。大家参考网上的文章吧。
自己还是不太明白,为什么不用事务就不行。昨天在Java project下不用事务也可以save,今天就不行了。继续学习吧。