在dao中写了一个save的方法,一开始试了几次都发现没有数据存入数据库。
后面试着加了一下transaction的annotation,就发现存入数据库了。
具体为什么,不清楚。但感觉貌似dao中的方法必须加了transaction的annotation
它才能正常执行。
想看具体点的信息
可以看 http://www.189works.com/article-81234-1.html
后面试着加了一下transaction的annotation,就发现存入数据库了。
具体为什么,不清楚。但感觉貌似dao中的方法必须加了transaction的annotation
它才能正常执行。
@Component("bookmarkDao")
public class BookmarkDao extends GenericDao<Bookmark, Long>{
public BookmarkDao(){
super();
this.entityClass = Bookmark.class;
}
@Transactional(propagation=Propagation.REQUIRED, readOnly=false)
public Bookmark distinctSave(Bookmark entity){
String hql = "from Bookmark where url = ?";
List list = this.find(hql, entity.getUrl());
if(list == null || list.size() == 0){
return this.save(entity);
} else {
return (Bookmark)list.get(0);
}
}
}
想看具体点的信息
可以看 http://www.189works.com/article-81234-1.html
事务注解在DAO方法中的作用
本文讨论了在DAO类中使用事务注解@Transaction的重要性。通过实例演示,在未添加事务注解的情况下数据无法正常存入数据库,而加入事务注解后数据成功保存。解释了事务注解在确保数据库操作的原子性和一致性方面的关键作用。
1530

被折叠的 条评论
为什么被折叠?



