- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Struts2 core / Hibernate 3.3
优化 Spring 的整合:通过Annotation 的方式。
BizIBookBiz bookBiz= (IBookBiz) BeanFactory.getContext().getBean(bookBizBean);1、删除web.xml 中的以前的appliaction.xml 配置的信息。2、删除Action
BizIBookBiz bookBiz= (IBookBiz) BeanFactory.getContext().getBean(bookBizBean);
3、删除Biz 类中的Dao 的Set 和 Get 方法,通过在定义的全局变量上加标记:@Autowired
@Autowired
private IBookDao bookDao;
4、将 application.xml 中的 Biz 的配置删除掉, 在 Biz 类的头部加标记
@Service(bookBizBean)
@Service(bookBizBean)
public class BookHibBiz implements IBookBiz{
5、在 application.xml 文件中配置:用于扫描去找Biz 和 Dao
context:component-scan base-package=com.icss.bk.biz.impl /
@Repositorycontext:component-scan base-package=com.icss.bk.dao.impl / 6、在 Dao 类上方加标记
@Repository
public class BookHibDao extends BaseHibDao implements IBookDao{ 7、删除 appliaction.xml 中的 dao 的配置
8、删除 appliaction.xml 中的 sessionFactory 的配置,加入 Annotation 的配置
bean id=sessionFactory class=org.springframework.orm.hibernate3.annotation.Annotatio
nSessionFactoryBean
property name=configLocation value=classpath:hibernate.cfg.xml
/property
/
/bean
tx:annotation-driven transaction-manager=txManager /
bean id=txManager class=org.springframework.orm.hibernate3.HibernateTransaction
Manager
property name=sessionFactory ref=sessionFactory /
/bean
在普通的,只进行数据库的打开和关闭的方法上,加上 Transactional标记,属性设为readonly=true表示只进行数据库的打开和关闭,在有数据库的事务控制的地方, @Transactional(rollbackFor=Throwable.class)
public void buyBooks(User user, double allMoney, MapString, Integer books)
9、注意dao还得找sessionFactory。需要注入sessionFactory。在BaseHibDao中
写一个方法,注入sessionFactory。
@Autowired
@Autowired
public void setMySessionFacory(SessionFactory sessionFactory){
this.setSessionFacory(sessionFactory);
}
综 上 : 先 是 Action 通 过 getBean 装 Biz, 那 么 需 要 在 application.xml 中 的
constant 配 置 进 行 扫 描 — — — — — — 然 后 靠 的 是 在 Biz 中 的 标 记 名
@Service(bookBizBean)——————再在Biz中装Dao,同样先进行扫描————
————靠的是标记 @Repository—————— Dao需要用到SessionFacrory——通过配置文件中的配置,在BaseHibDao通过 @Autowired标记进行SessionFaction的注入。
原创力文档


文档评论(0)