您的位置:首页 > 其它

S2SH整合、配置文件、jar包的介绍

2014-03-27 21:33 435 查看
MyEclipse9整合struts2.1+hibernate3.3+spring3.0

一、创建一个web project




二、引入hibernate3.3
1、将jar包放到lib目录下



2、以下两个步骤可以不引入hibernate.cfg.xml,因为最后都要交给spring管理,但引入也无妨,最后删掉就可以,配置spring的applicationContext.xml时可参照参数。






3、不需要引入工具类




三、引入spring3.0
1、添加的lib包有:Spring 2.0 AOP Libraries 、Spring 2.0 Core Libraries 、Spring 2.0 Persistence Core Libraries 、Spring 2.0 Persistence JDBC Libraries 、Spring 2.0 Web Libraries
注意:下图有点错误,jar同样放到lib目录下,做的时候光截图没注意出错了



2、将applicationContext.xml放到web-inf下



3、sessionFactory等以下自己配置





四、引入struts2.1
1、



2、




五、修改配置文件
1、xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> <display-name></display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>

<!-- 解决项目中的乱码问题 -->
<filter>
<filter-name>encoding</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- 解决hibernate懒加载问题 -->
<filter>
<filter-name>OpenSessionInViewFilter</filter-name>
<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
<init-param>
<param-name>singleSession</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>OpenSessionInViewFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- struts2的拦截器配置 -->
<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>/*</url-pattern>
</filter-mapping>
<!-- application.xml的位置,并初始化spring容器 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<!-- /WEB-INF/applicationContext-*.xml,classpath*:applicationContext-*.xml
-->
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>

<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>

</web-app>
2、applicationContext.xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd"> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName"
value="oracle.jdbc.driver.OracleDriver">
</property>
<property name="url" value="jdbc:oracle:thin:@localhost:1521:******"></property>
<property name="username" value="******"></property>
<property name="password" value="******"></property>
<property name="initialSize" value="3"/>
<property name="maxActive" value="500"/>
<property name="maxIdle" value="2"/>
<property name="minIdle" value="1"/>
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.Oracle9Dialect
</prop>
<prop key="hibernate.show_sql">
true
</prop>
</props>
</property>
<property name="mappingResources">
<list>
</list>
</property></bean>

<!-- 事务控制 -->
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<tx:annotation-driven transaction-manager="transactionManager"/>
</beans>


六、将struts2-spring-plugin-2.3.15.3.jar加入到lib中

至此,S2SH项目整合完成。

以下是S2SH项目中的jar包的介绍(转自别人)
struts2所必须的jar包五个:
struts2-core-2.1.6.jar --------------- struts2的核心包
freemarker-2.3.13.jar--------------- FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具
commons-logging.jar ----------- Jakarta的通用日志记录包
ognl-2.6.11.jar -------------- 支持ognl表达式
xwork-2.1.2.jar -------------- xwork的包 由于Struts2是由xwork的延伸 有些类依然关联着 xwork的类
(顺便介绍下相关名词--------
1. jakarta:jakarta是apache组织下的一套Java解决方案的开源软件的名称,它包括了很多子项目。Tomcat,ant,struts等等也是apache下的开源项目。同时也是jakarta的关联项目。
2.OGNL:OGNL是一种功能强大的表达式语言(Expression Language,简称为EL),webwork2和现在的Struts2.x中使用OGNL取代原来的EL来做界面数据绑定
3.xwork:XWork是一个标准的Command模式实现,并且完全从web层脱离出来。Xwork提供了很多核心功能:前端拦截机(interceptor),运行时表单属性验证,类型转换,强大的表达式语言(OGNL – the Object Graph Navigation Language),IoC(Inversion of Control倒置控制)容器等。
4.command模式:命令(Command)模式属于对象的行为模式【GOF95】。命令模式又称为行动(Action)模式或交易(Transaction)模式。命令模式把一个请求或者操作封装到一个对象中。)

Hibernate所用15个jar包:
Hibernate3.jar-------------------核心包
antlr.jar----------------------------语言转换工具,hibernate用他将hql语句转换为sql语句
dom4j.jar--------------------------解析xml文档的工具
ehcahe.jar-------------------------缓存工具,如没提供其它缓存,默认使用他
jta.jar--------------------------------标准的JTA API(JTA即java事物API,JTA事务比JDBC事务更强大。一个JTA事务可以有多个参与者,而一个JDBC事务则被限定在一个单一的数据库连接),有朋友说这个包可以不要,不过没测试,反正加这个没错,所以就没删除了。
cglib.jar----------------------------高效的代码生成工具, Hibernate用它在运行时扩展 Java类和实现 Java 接口
asm.jar----------------------------- ASM字节码库 , 使用“cglib”则必要
asm-attrs.jar ===---------------------- ASM字节码库,使用“cglib”则必要
commons-collections-2.1.1.jar-----Apache 的工具集,集合类 ,用来增强Java对集合的处理能力。
jaxen-1.1-beta-7.jar------------------用dom 的方式解析工程中xml文件,如果想提高启动性能则去使用(可选)
commons-logging.jar---------------日志工具
log4j1.2.11.jar--------------------------log4j 库,Apache 的日志工具
commons-pool.jar, commons-dbcp.jar--------DBCP数据库连接池,Apache的Jakarta组织开发的,Tomcat4的连接池也是DBCP。(可选)
xml-apis.jar------------------------------解析xml。
spring所用的5个jar:
spring.jar----------------------------是包含有完整发布的单个jar包
spring-aop.jar----------------------这个jar文件包含在应用中使用Spring的AOP特性时所需的类
aspectjrt.jar---------------------------------是Spring Aop所要用到的包
commons-digester.jar--------------------Digester基于规则的XML文档解析,主要用于XML到Java对象的映射.
aspectjweaver.jar-------------------------用于在Spring 2.0中集成AspectJ AspectJ LTW织入器

其他4个jar包:
msbase.jar,mssqlserver.jar,msutil.jar----连接数据库sql server 20003个jar
struts2-spring-plugin-2.0.11.1.jar-------struts2与spring整合所需的插件。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  S2SH
相关文章推荐