s2sh框架整合具体配置-xml方式

Posted llguanli

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了s2sh框架整合具体配置-xml方式相关的知识,希望对你有一定的参考价值。

s2sh整合之xml方式

说明:本文档所採用的框架版本号为:Struts 2.1.8, Sping2.5.5,? Hibernate 3.5.6

1.????须要的jar包:

------------Strut2-----------:

commons-fileupload-1.2.1.jar

commons-io-1.3.2.jar

commons-logging.jar

freemarker-2.3.15.jar

ognl-2.7.3.jar

struts2-core-2.1.8.1.jar

struts2-spring-plugin-2.1.8.1.jar

xwork-core-2.1.6.jar

-------------Spring---------------:

aspectjrt.jar

aspectjweaver.jar

cglib-nodep-2.1_3.jar

common-annotations.jar

commons-lang.jar

commons-logging.jar

spring.jar

-----------Hibernate------------:

antlr-2.7.6.jar

commons-collections-3.1.jar

dom4j-1.6.1.jar

hibernate-annotations.jar

hibernate-commons-annotations.jar

hibernate3.jar

javassist-3.9.0.GA.jar

jta-1.1.jar

slf4j-api-1.5.8.jar

slf4j-log4j12.jar

------------other-----------------

c3p0-0.9.1.2.jar

json-lib-2.1.jar

jstl.jar

junit.jar

log4j-1.2.15.jar

mysql-connector-java-5.1.10-bin.jar

standard.jar

2.????web.xml

<?xmlversion="1.0"encoding="UTF-8"?>

<web-appxmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

?? xmlns="http://java.sun.com/xml/ns/javaee"

?? xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"

?? xsi:schemaLocation="http://java.sun.com/xml/ns/javaee

?? ?http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"version="2.5">

?<!-- spring config begin -->

?<context-param>

???<param-name>contextConfigLocation</param-name>

???<param-value>classpath:spring/applicationContext.xml</param-value>

?</context-param>

?<listener>

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

?</listener>

?<!-- spring config end-->

?<filter>

???<filter-name>Spring character encoding filter</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>Spring character encoding filter</filter-name>

???<url-pattern>/*</url-pattern>

?</filter-mapping>

?

?<filter>

???<filter-name>OpenSessionInViewFilter</filter-name>

???<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>

?</filter>

?<filter-mapping>

???<filter-name>OpenSessionInViewFilter</filter-name>

???<url-pattern>*.action</url-pattern>

?</filter-mapping>

?<!-- struts config begin-->

?<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>

?<!-- struts config end-->

?<welcome-file-list>

???<welcome-file>login.jsp</welcome-file>

?</welcome-file-list>

</web-app>

3.????applicationContext.xml

<?xmlversion="1.0"encoding="UTF-8"?>

<beansxmlns="http://www.springframework.org/schema/beans"

?? xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

?? xmlns:context="http://www.springframework.org/schema/context"

?? 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-2.5.xsd

??????????http://www.springframework.org/schema/context

??????????http://www.springframework.org/schema/context/spring-context-2.5.xsd

??????????http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd

??????????http://www.springframework.org/schema/txhttp://www.springframework.org/schema/tx/spring-tx-2.5.xsd">

??

?? <import resource="applicationContext-db.xml"/>

?? <!-- dao service 默认使用单例 -->

?? <beanid="userDao"class="cn.s2sh.demo.dao.impl.UserDaoImpl">

????? <propertyname="sessionFactory"ref="sessionFactory"></property>

?? </bean>

?? <beanid="userService"class="cn.s2sh.demo.service.impl.UserServiceImpl">

????? <propertyname="userDao"ref="userDao"/>

?? </bean>

?? <!-- action 不能使用单例,设置scope="prototype"? -->

?? <beanid="userAction"class="cn.s2sh.demo.struts2.action.UserAction"scope="prototype">

????? <propertyname="userService"ref="userService"></property>

?? </bean>

</beans>

4.????applicationContext-db.xml

<?xmlversion="1.0"encoding="UTF-8"?

>

<beansxmlns="http://www.springframework.org/schema/beans"

?? xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

?? xmlns:context="http://www.springframework.org/schema/context"

?? 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-2.5.xsd

??????????http://www.springframework.org/schema/context

?????????? http://www.springframework.org/schema/context/spring-context-2.5.xsd

??????????http://www.springframework.org/schema/aophttp://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">

?? <beanid="sessionFactory"class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">

????? <propertyname="configLocation">

????????? <value>classpath:hibernate/hibernate.cfg.xml</value>

????? </property>

?? </bean>

?? <beanid="transactionManager"?class="org.springframework.orm.hibernate3.HibernateTransactionManager">

????? <propertyname="sessionFactory">

????????? <refbean="sessionFactory"/>

????? </property>

?? </bean>

?? <tx:advicetransaction-manager="transactionManager"id="tx">

????? <tx:attributes>

????????? <tx:methodname="save*"read-only="false"/>

????????? <tx:methodname="delete*"read-only="false"/>

????????? <tx:methodname="update*"read-only="false"/>

????????? <tx:methodname="*"read-only="true"/>

????? </tx:attributes>

?? </tx:advice>

?? <aop:config>

????? <aop:pointcutexpression="execution(*cn.s2sh.demo.service.impl.*.*(..))"id="perform"/>

????? <aop:advisoradvice-ref="tx"pointcut-ref="perform"/>

?? </aop:config>

</beans>

5.????hibernate.cfg.xml

<?

xmlversion=‘1.0‘encoding=‘UTF-8‘?>

<!DOCTYPEhibernate-configuration PUBLIC

????????? "-//Hibernate/Hibernate Configuration DTD 3.0//EN"

????????? "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

?

<!-- Generated by MyEclipse HibernateTools.?????????????????? -->

<hibernate-configuration>

?

<session-factory>

?? <propertyname="dialect">

????? org.hibernate.dialect.MySQLDialect

?? </property>

?? <propertyname="connection.url">jdbc:mysql://localhost:3306/s2shdemo</property>

?? <propertyname="connection.username">root</property>

?? <propertyname="connection.password">root</property>

?? <propertyname="connection.driver_class">

????? com.mysql.jdbc.Driver

?? </property>

?? <propertyname="myeclipse.connection.profile">MySQL</property>

?? <propertyname="hbm2ddl.auto">update</property>

?? <propertyname="show_sql">true</property>

??

?? <mappingresource="cn/s2sh/demo/domain/User.hbm.xml"/>

?

</session-factory>

</hibernate-configuration>

6.????struts.xml

<?xmlversion="1.0"encoding="UTF-8"?>

<!DOCTYPEstruts PUBLIC

?? "-//Apache Software Foundation//DTD StrutsConfiguration 2.1.7//EN"

?? "http://struts.apache.org/dtds/struts-2.1.7.dtd">

<struts>

?? <!-- 开发模式下使用,这样能够打印出更具体的错误信息 ,默认值为false -->

?? <constantname="struts.devMode"value="true"/>

?? <!-- 设置浏览器是否缓存静态内容,默认值为true(生产环境下使用),开发阶段最好关闭 -->

?? <constantname="struts.serve.static.browserCache"value="false"/>

?? <!-- 默认的视图主题 simple模式降低多余代码的生成 -->

?? <constantname="struts.ui.theme"value="simple"/>

?? <!-- 指定Web应用的默认编码集,相当于调用setCharacterEncoding方法 -->

?? <constantname="struts.i18n.encoding"value="UTF-8"/>

?? <constantname="struts.custom.i18n.resources"

?? ???? value="cn.s2sh.action.token"></constant>

?? <!-- struts的请求托付给spring管理,

?????????? 作用:创建Action实例的过程由spring处理,其它的还是由struts2自己处理 -->

??<constantname="struts.objectFactory"value="spring"/>

??

??<packagename="user"namespace="/"extends="struts-default">

????? <actionname="userAction_*"class="userAction"method="{1}">

???????? <resultname="login">login.jsp</result>

???????? <resultname="index">index.jsp</result>

???????? <resultname="listAction">WEB-INF/jsp/user/list.jsp</result>

???????? <resultname="action2action"type="redirectAction">userAction_getAllUser</result>

???????? <resultname="addUI">WEB-INF/jsp/user/saveUI.jsp</result>

???????? <resultname="updateUI">WEB-INF/jsp/user/updateUI.jsp</result>

????? </action>

??</package>

</struts>

?

下载完整demo: http://download.csdn.net/detail/rchm8519/7513457

以上是关于s2sh框架整合具体配置-xml方式的主要内容,如果未能解决你的问题,请参考以下文章

Spring+mybatis+struts框架整合的配置具体解释

SSH 框架整合(maven版本 xml配置方式)

Java框架:spring框架整合hibernate框架的xml配置(使用注解的方式)

s2sh框架整合所需包,struts2+spring+hibernate所需的jar包下载

整合S2SH开发项目步骤

S2SH CRUD 整合