ssh中Spring配置文件applicationContext.xml

Spring应该配啥

1、可以帮strtus生成action,然后起个名字,struts那里的配置再使用这个名字就行了,再加上配置让spring帮助生成action,不多说。
2、可以帮hibernate配的就多了去了,简单来说,陪完spring就不用配hibernate.cfg.xml了,可以帮hibernate生成sessionFactory对象,操作数据库,至关重要。先在外部配置数据库四个参数文件.xml,有了配置文件可以配置数据库连接池,需要的参数直接从数据库四个参数文件.xml中取。有了数据库连接池,可以配置sessionFactory,sessionFactory中还可以配上数据库方言,显示sql,格式化sql,自动建表,还有重要的配置读取某个包下全部的XXX.hbm.xml。这样sessionFactory就配完了
3、有了sessionFactoy,就配置spring的事务管理器transactionManager。核心事务管理器。
4、然后配置通知。跟切面。或者直接配置事务注解。
6、然后配自己本来就应该配的,就是大容器,配置各个action,service,dao层的bean。dao中注入sessionFactory。

总结一下。配置的有
读取数据库参数文件
配置数据库连接池
配置sesionFactory(里面配置数据库方言。showsql,formatsql,加读取XXX.hbm.xml)
配置transactionManager
配置通知及切面(或者开启事务注解)
配置各种action,service,dao。

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

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

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

    <tx:advice id="txAdvice" transaction-manager="transactionManager">
        <tx:attributes>
            <tx:method name="save*" isolation="REPEATABLE_READ" propagation="REQUIRED" read-only="false" />
            <tx:method name="*" isolation="REPEATABLE_READ" propagation="REQUIRED" read-only="false" />
        </tx:attributes>
    </tx:advice> 

     <aop:config>
        <aop:pointcut expression="execution(* cn.XXX.service.impl.*ServiceImpl.*(..))" id="txPc"/>
        <aop:advisor advice-ref="txAdvice" pointcut-ref="txPc" />
    </aop:config> 

    <!-- <tx:annotation-driven transaction-manager="transactionManager" /> -->


    <bean name="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean" >
        <property name="dataSource" ref="dataSource" ></property>
        <property name="hibernateProperties">
            <props>             
                <prop key="hibernate.show_sql" >true</prop>
                <prop key="hibernate.format_sql" >true</prop>
                <prop key="hibernate.hbm2ddl.auto" >update</prop>
            </props>
        </property>
        <property name="mappingDirectoryLocations" value="classpath:cn/ixxx/domain" ></property>
    </bean>

    <!-- action -->
    <!-- 注意:Action对象作用范围一定是多例的.符合struts2架构 -->
    <bean name="xXXAction" class="cn.itcast.web.action.XXXAction" scope="prototype" >
        <property name="xXXService" ref="xXXService" ></property>
    </bean> 
    <!-- service -->
    <bean name="xXXService" class="cn.itcast.service.impl.XXXServiceImpl" >
        <property name="xXX" ref="xXXDao" ></property>
    </bean> 
    <!-- dao -->
    <bean name="xXXDao" class="cn.itcast.dao.impl.XXXDaoImpl" >
        <property name="sessionFactory" ref="sessionFactory" ></property>
    </bean>
</beans>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值