欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

spring总结:(4)SSH框架的配置文件

程序员文章站 2022-03-02 18:13:37
...

1.加载db.properties

    <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="location" value="classpath:db.properties"></property>
    </bean>

2.配置数据源DataSource

   <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <property name="driverClass" value="${driver}"></property>
        <property name="jdbcUrl" value="${url}"></property>
        <property name="user" value="${name}"></property>
        <property name="password" value="${pass}"></property>
    </bean>

 3.配置sessionFactory注入dataSource

  <bean id="sessionFactoryDataSource" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
        <property name="dataSource" ref="dataSource"></property>
        <!-- 配置hibernate相关属性 -->
        <property name="hibernateProperties">
            <props>
                <prop key="dialect">org.hibernate.dialect.MySQL5Dialect</prop>
                <prop key="show_sql">true</prop>
                <prop key="format_sql">true</prop>
                <prop key="hbm2ddl.auto">update</prop>
            </props>
        </property>
        <!-- 配置映射文件位置 -->
        <property name="mappingResources">
            <list>
                <value>cn/jzh/entity/User.hbm.xml</value>
            </list>
        </property>
    </bean>

 4.配置hibernateTemplate并注入sessionFactory

 <bean id="hibernateTemplateSessonFactory" class="org.springframework.orm.hibernate5.HibernateTemplate">
        <property name="sessionFactory" ref="sessionFactoryDataSource"></property>
    </bean>

 5.配置UserDao并注入hibernateTemplate 

    <bean id="userDao" class="cn.dao.impl.UserDaoImpl">
        <property name="ht" ref="hibernateTemplateSessonFactory"></property>
    </bean>

6.配置UserService并注入UserDao 

    <bean id="service" class="cn.service.UserServiceImpl">
        <property name="dao" ref="userDao"></property>
    </bean>

 7.配置UserinfoAction,并注入UserService 
   

    <bean id="userAction" class="cn.action.UserAction">
        <property name="service" ref="service"></property>
    </bean>

最后:配置spring声明事物 
       配置hibernteTransactionManager,注入sessionFactory 

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

        配置事务的通知

    <tx:advice id="txAdvice" transaction-manager="transaction">
         <!-- 事物的传播的行为 -->
         <tx:attributes>
             <tx:method name="*" propagation="REQUIRED"/>
         </tx:attributes>
     </tx:advice>
     <aop:config>
         <!-- 定义切面 -->
         <aop:pointcut expression="execution(* cn.jzh.service.*.*(..))" id="mypointcut"/>
         <!-- 将事务通知和切面告知通知者 -->
         <aop:advisor advice-ref="txAdvice" pointcut-ref="mypointcut"/>
     </aop:config>


    
 

相关标签: spring