ssh整合步骤
需积分: 0 86 浏览量
更新于2015-01-22
收藏 33KB DOC 举报
SSH整合是指将Struts2、Hibernate和Spring三个开源框架集成在一起,用于构建高效、灵活的企业级Web应用。下面将详细介绍SSH整合的步骤以及需要注意的事项。
一、Struts2整合
1. 创建一个Web工程,并在`WEB-INF/lib`目录下添加Struts2所需的jar包。
2. 在`web.xml`配置文件中,添加Struts2的过滤器配置,以拦截所有`.action`请求,确保Struts2能够处理HTTP请求。配置如下:
```xml
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
```
3. 创建`struts.xml`配置文件,用于定义Action、结果页面以及其他Struts2的配置。
二、Hibernate整合
1. 在`WEB-INF/lib`目录下添加Hibernate所需的jar包,并在`src`目录下创建`hibernate.cfg.xml`配置文件,配置数据库连接信息、实体类扫描路径等。
2. 如果选择使用Spring管理数据源,可以在`spring.xml`中配置数据源,从而替代`hibernate.cfg.xml`中的数据源配置。
三、Spring整合
1. 在`WEB-INF/lib`目录下添加Spring所需的jar包,并在`src`目录下创建`spring.xml`配置文件,用于管理Bean、事务、数据源等。
2. 添加Spring监听器`ContextLoaderListener`到`web.xml`,以在Web应用启动时加载Spring配置:
```xml
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</context-param>
</listener>
```
3. 使用`struts2-spring-plugin-2.3.16.jar`作为Struts2和Spring之间的桥梁,确保Struts2的Action可以正确地由Spring管理。
四、数据库连接库
在`WEB-INF/lib`目录下添加连接数据库所需的jar包,如JDBC驱动等。
五、注意事项
1. 当使用Java EE 5 Libraries时,可能会遇到`javaee.jar`与Hibernate的`hibernate-jpa-2.0-api-1.0.1.Final.jar`冲突的问题。如果遇到双向的oneToMany或manyToOne关系报错,可能需要调整或排除冲突的jar包。
2. 在使用Java EE Libraries时,整合Hibernate时,需要在`hibernate.cfg.xml`中添加`<property name="javax.persistence.validation.mode">none</property>`,以避免验证错误。
3. Hibernate的注解最好配置在get方法上,以保持封装性;而Spring的注解通常配置在set方法上,便于依赖注入。
4. 如果使用dbcp数据源,需要添加`commons-dbcp-1.2.2.jar`和`commons-pool-1.5.4.jar`两个额外的jar包。
通过以上步骤,可以完成SSH的整合工作。在实际操作中,还需要根据具体的应用需求和环境进行调整,例如配置实体类、Action、Service、DAO等组件,以及处理异常、事务管理等高级特性。同时,要时刻关注版本兼容性和最佳实践,以确保项目的稳定性和可维护性。