SSH整合

一、核心配置文件

<!-- 1.先加载数据源 -->

 

<context:property-placeholder location="classpath:db.properties" />

<!-- 1.源文件 -->

uname=root
upwd=root
driver_Class=com.mysql.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/tap_water?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT&serverTimeZone=UTC
initPoolSize=20
maxPoolSize=200

<!-- 2.配置数据源 -->

<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<!-- 读取配置文件db.properties中的参数 (注意properties中的name不能与Spring中的name发生冲突) -->
<property name="user" value="${uname}"></property>
<property name="password" value="${upwd}"></property>
<property name="driverClass" value="${driver_Class}"></property>
<property name="jdbcUrl" value="${url}"></property>
<property name="initialPoolSize" value="${initPoolSize}"></property>
<property name="maxPoolSize" value="${maxPoolSize}"></property>
</bean>

 

<!-- 3.配置sessionFactory -->

<bean id='sessionFactory'
        class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
        <!-- 3.1 引入数据源 -->
        <property name="dataSource" ref="dataSource"></property>
        <!-- 3.3 加载hibernate映射文件,加载全部的hbm文件 -->
        <property name="mappingLocations"
            value="classpath:top/youshang520i/www/pojo/*.hbm.xml"></property>
        <property name="hibernateProperties">
            <props>
                <!-- 设置sql可见 -->
                <prop key="hibernate.show_sql">true</prop>
                <!-- 设置格式化sql -->
                <prop key="hibernate.format_sql">true</prop>
                <!-- 使用线程开启本地事物 -->
                <!-- <prop key="hibernate.current_session_context_class">thread</prop> -->
                <!-- <prop key="hibernate.current_session_context_class">jta</prop> -->
                <!-- 指定存储数据与取数据时的编码格式 -->
                <prop key="hibernate.connection.useUnicode">true</prop>
            </props>
        </property>
</bean>

<!-- 4.配置事务 -->

<bean id='transactionManager'
        class='org.springframework.orm.hibernate5.HibernateTransactionManager'>
        <property name="sessionFactory" ref="sessionFactory"></property>
</bean>

<!-- 5.配置事务属性 -->

<tx:advice id='myAdvice' transaction-manager="transactionManager">
        <tx:attributes>
            <tx:method name="add*" propagation="REQUIRED" />
            <tx:method name="del*" propagation="REQUIRED" />
            <tx:method name="update*" propagation="REQUIRED" />
            <tx:method name="*" />
        </tx:attributes>
    </tx:advice>

<!-- 6.配置事务切点 -->

<aop:config>
        <!-- 需要添加事务的方法 -->
        <aop:pointcut expression="execution(* top.youshang520i.www.dao.impl.*.*(..))"
            id="myCut" />
        <aop:advisor advice-ref="myAdvice" pointcut-ref="myCut" />
</aop:config>

一 一、配置dao.xml

    <import resource="applicationContext-core.xml"/>
    <bean id='testDaoImpl' class="top.youshang520i.www.dao.impl.TestDaoImpl">
        <property name="sessionFactory" ref="sessionFactory" ></property>
    </bean>

一 二、配置biz.xml

   

  <import resource="applicationContext-dao.xml"/> 
  <bean id="testBizImpl" class="top.youshang520i.www.biz.impl.TestBizImpl">
      <property name="itestDao" ref="testDaoImpl"></property>
  </bean>

一 三、配置bean.xml

<!-- scope表示每次都新new一个对象-->

<bean id="syEmp" class="top.youshang520i.www.pojo.SyEmp" scope="prototype" ></bean>

一 四、配置Service.xml

<import resource="applicationContext-bean.xml"/>
<import resource="applicationContext-biz.xml" />
<bean id='syArea' class="top.youshang520i.www.pojo.SyArea"></bean>
<bean id="testService" class="top.youshang520i.www.service.TestService">
     <property name="itestBiz" ref="testBizImpl"></property>
     <property name="syArea" ref="syArea"></property>
</bean>

二、需要依赖的jar包(使用maven)

  

 <!--jar版本 -->

    <properties>
        <spring.version>5.0.8.RELEASE</spring.version>
        <struts.version>2.5.13</struts.version>
        <hibernate.version>5.3.2.Final</hibernate.version>
        <c3p0.version>0.9.5.2</c3p0.version>
    </properties>

<!-- 添加Hibernate依赖 -->
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-core</artifactId>
            <version>${hibernate.version}</version>
        </dependency>

<!-- spring依赖 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>${spring.version}</version>
        </dependency>

<!-- spring对orm的支持依赖 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-orm</artifactId>
            <version>${spring.version}</version>
        </dependency>

<!-- 引入Spring 的AspectJ依赖,解析事务切点 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-aspects</artifactId>
            <version>${spring.version}</version>
        </dependency>

<dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>${spring.version}</version>
        </dependency>

  <!-- 引入数据库连接池C3P0 -->
        <dependency>
            <groupId>com.mchange</groupId>
            <artifactId>c3p0</artifactId>
            <version>${c3p0.version}</version>
        </dependency>

<!-- 引用struts2框架核心依赖 start -->
        <dependency>
            <groupId>org.apache.struts</groupId>
            <artifactId>struts2-core</artifactId>
            <version>${struts.version}</version>
        </dependency>
<!-- 引用struts2框架核心依赖 end -->
<!-- struts2对spring的支持依赖 start -->
        <dependency>
            <groupId>org.apache.struts</groupId>
            <artifactId>struts2-spring-plugin</artifactId>
            <version>${struts.version}</version>
        </dependency>
<!-- struts2对spring的支持依赖 end -->

三、配置web.xml

<!--把版本设置为3.1-->

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmlns="http://xmlns.jcp.org/xml/ns/javaee"
     xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
      id="WebApp_ID" version="3.1">

<!-- 加载applicationContext.xml -->
  <context-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>classpath:applicationContext-*.xml</param-value>
  </context-param>

  <!-- 加载struts2的核心过滤器 -->
  <filter>
      <filter-name>struts2</filter-name>
      <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>
  <filter-mapping>
      <filter-name>struts2</filter-name>
      <url-pattern>/*</url-pattern>
  </filter-mapping>

  <!-- 配置spring监听 -->
  <listener>
      <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>

  <!-- 注意上面的先后顺序 ,可以加过滤器-->

四、配置struts.xml

<!-- 设置可以使用通配符 -->
<global-allowed-methods>regex:.*</global-allowed-methods>

<!-- 需要改动的地方就是class处 -->

 <action  name="*_*_Service_*" class="{1}Service" method="{2}">
            <result name="success" type="redirect">page/{3}.jsp</result>
 </action>

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值