- new java web project
- add struct capability(默认)
- 编辑structs-config.xml
建立并编辑userLoginSuccess.jsp
添加Form,ation and jsp,添加form属性userName,password,create jsp form /userLogin.jsp(完成后生成aciton,form和一些类库)
编辑userLogin.jsp
编辑index.jsp
新建并编辑logout.jsp
- run as 3测试一下登录情况
- add Hibernate capability(添加类库和jar,必须选择第二项copy**,否则与Spring整合会出现冲突,第二页默认,第三页选择数据库连接如mysql,
第四页new一个名字为dao的java包,生成的代码将纺织dao包内和HibernateSessionFactory,为了与spring整合此处选择不创建sessionfactory)


- add Spring capability(第一页,选择类库AOP+Core+Persistence Core+Web(为将Spring整合structs必选项),jar选择第二项copy**否则与Hibernate整合出现冲突;第二页默认,第三页默认sessionfactory)
生成applicationContext.xml加载类库 - Spring整合Hibernate
进入DB explorer,选择需要使用的数据库表,右击Hibernate Inverse Engineering。第一页 会自动选择DAO type="Spring DAO" - 在代码中具体使用标注形式整合spring和hibernate
spring配置文件修改头并加入<tx: annotation-driven transaction-manager="transactionManger" proxy-target-class="true"/>
其中需要建立transactionManger bean基本是模板。

- 在*DAO.java中加入 @Transactional标注,导入相应包
- 测试Run as3,刷新数据库有变化(到此spring整合hibernate成功)

- 开发业务层代码*Manager.java(一般放在service包中),注入DAO(以*DAO作为属性)set*() ,get*(), findby*(),check*()
- 业务层代码需要在Spring中进行配置

- 测试*Manager,run as 2java application

- 未测试spring整合structs,为action增加message属性,并生成get*(),set*()
- 在structs配置文件增加,plug in用于启动spring,controller用于覆盖默认的action处理方式

- 修改spring配置文件,将action作为一个bean其中。name=“/userLogin“必须与action-mapping中对应


- run as 3 测试spring与structs是否整合成功
- spring整合structs其他整合方法
action support解决 - action与业务层代码*manger()整合在一起
解决中文显示乱码问题,需要加上过滤器,

并将filter加入到web.xml的开头

- 向action注入*Manager属性(需要导入*Manager类)

- 将登录检查的硬编码改成数据库连接
- 在spring配置文件中,action bean中增加属性*Manager.

- reploy项目,使用mysql数据库中真实的用户名密码登录进行测试
第一个是加载 Spring 的BeanFactory
第二个是设法代替 Struts 配置文件中的 Action 类的类型(或者类似的策略例如替换其核心的 Processor)
第三个是 Spring 的 Bean 配置文件中必须配置出来 name 和Struts 的 Action 路径(path)相同的 Action bean 的声明。
本文详细介绍如何在Java Web项目中实现Struts与Spring框架的整合,包括添加必要的配置文件和依赖库,设置Spring的BeanFactory,以及如何通过Struts配置文件指定Action类等关键步骤。
619

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



