Linux安全网 - Linux操作系统_Linux 命令_Linux教程_Linux黑客

会员投稿 投稿指南 本期推荐:
搜索:
您的位置: Linux安全网 > Linux集群 > Architecture > » 正文

Hibernate反向工程导致的数据无法存储

来源: wpf814533631 分享至:

在使用MyEclipse过程中,用Hibernate反向工程生成的DAO有时会发生对象无法存储到数据库,或对象修改后无法存储到数据库的现象。原因是没有运用事务,可以在调用dao对象的代码前后加事务控制,但这样破坏了dao对数据库操作的 例如:

public void save(Resource transientInstance) { log.debug("saving Resource instance"); try { Session session = getSession(); Transaction tr = session.beginTransaction(); //开始事务 session.save(transientInstance); tr.commit(); //提交事务 session.flush(); //清空缓存 log.debug("save successful"); } catch (RuntimeException re) { log.error("save failed", re); throw re; } } public void update(Exam instance) { log.debug("attaching update Exam instance"); try { Session session = getSession(); Transaction tr = session.beginTransaction(); //开始事务 session.update(instance); tr.commit(); //提交事务 session.flush(); log.debug("attachUpdate successful"); } catch (RuntimeException re) { log.error("attachUpdate failed", re); throw re; } }
封装,让业务层中掺杂了持久层代码。


Tags:
分享至:
最新图文资讯
1 2 3 4 5 6
验证码:点击我更换图片 理智评论文明上网,拒绝恶意谩骂 用户名:
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 发展历史