SSH框架整合搭建(图解)

本文介绍如何使用Struts2(2.3版本)、spring(4.2.2版本)、hibernate(5.2.2版本)等技术进行项目整合。主要内容包括导入所需jar包、配置web.xml、struts.xml及applicationContext.xml等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

所用工具: Struts2(2.3版本)、spring(4.2.2版本)、hibernate(5.2.2版本)、tomcat(8.0版本)、jdk(1.8版本)、SQL server2008

关于在搭建过程中遇到的jar包版本兼容问题各jar包的作用将在另一篇中介绍

步骤一:导入jar包

  1. Struts2:将struts-2.3.30-apps中, struts2-blank项目所用的jar包导入
    这里写图片描述
  2. spring :将spring4.2.2版本的如下jar包导入
    这里写图片描述
  3. 将5.2.2版本的hibernate中的required文件夹下的jar包导入
    这里写图片描述
    4.将5.2.2版本的hibernate中的optional下的有关c3p0的jar包导入
    这里写图片描述
    5.导入整合struts2和spring所需的 struts2-spring-plugin jar包、导入 commons-logging jar包、导入数据库驱动包。

上述jar包遇到有部分相同时选择最新版的删去旧版

步骤二:配置文件

1.配置web.xml(具体配置步骤请参考Struts2spring

 <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>
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>WEB-INF/classes/applicationContext.xml</param-value>
  </context-param>
  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>

2.配置struts.xml(具体配置步骤请参考Struts2

<struts>
    <!-- 使用"!"进行动态方法调用,需要设置如下常量 -->
    <constant name="struts.enable.DynamicMethodInvocation" value="true" />
    <!-- 整合spring -->
    <constant name="struts.objectFactory" value="spring" />

    <package name="ssh003" extends="struts-default">
         <action name="Index" class="Index" method="showAllCard">
            <result name="show">/WEB-INF/show.jsp</result>
         </action>
    </package>
</struts>

3.配置applicationContext.xml(具体配置步骤请参考hibernate

<bean id="mySessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
        <!-- 注入连接池,包含了数据库用户名,密码等等信息 -->
        <property name="dataSource" ref="myDataSource"/>

        <!-- 配置Hibernate的其他的属性 -->
        <property name="hibernateProperties">
            <props>
                <prop key="hibernate.dialect">org.hibernate.dialect.SQLServer2008Dialect</prop>
                <prop key="hibernate.show_sql">true</prop>
                <prop key="hibernate.format_sql">true</prop>
                <prop key="hibernate.connection.autocommit">false</prop>
                <!-- 开机自动生成表 -->
                <prop key="hibernate.hbm2ddl.auto">update</prop>
            </props>
        </property>
        <property name="mappingResources">
            <list>
                <value>com/entity/BookCard.hbm.xml</value>
            </list>
        </property>

    </bean> 

    <bean id="myDataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <!-- 配置连接数据库所需的驱动、url、账号密码 -->
        <property name="driverClass" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"/>
        <property name="jdbcUrl" value="jdbc:sqlserver://localhost:1433;DatabaseName=CardDB"/>
        <property name="user" value="sa"/>
        <property name="password" value="123456"/>
        <!-- 每300秒检查所有连接池中的空闲连接 -->
        <property name="idleConnectionTestPeriod" value="300"></property>
        <!-- 最大空闲时间,900秒内未使用则连接被丢弃。若为0则永不丢弃 -->
        <property name="maxIdleTime" value="900"></property>
        <!-- 最大连接数 -->
        <property name="maxPoolSize" value="2"></property>

    </bean>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值