您的位置:首页 > 编程语言 > Java开发

hibernate与spring整合的配置文档问题

2017-02-26 10:05 274 查看
    <context:component-scan base-package="com.wang"/>   去指定包下自动生成@component注释的对象

    <context:annotation-config/> 提供注释

    <!--<aop:aspectj-autoproxy/> --> 

    

    <!--

    <aop:config> AOP配置

        <aop:pointcut id="servicePointcut" expression="execution(public * com.wang.service.UserService..*.add(..))"/>

        <aop:aspect id="logAspect" ref="logInterceptor">

            <aop:before method="before" pointcut-ref="servicePointcut"></aop:before>

        </aop:aspect>

    </aop:config>

    -->

    <aop:config>
        <aop:pointcut id="daoPointcut" expression="execution(public * com.wang.dao..*.*(..)))"></aop:pointcut>
        <aop:aspect id="logAspect" ref="logInterceptor">
            <aop:before method="before" pointcut-ref="daoPointcut"></aop:before>
        </aop:aspect>
    </aop:config>

<aop:config>
        <aop:pointcut id="bussinessService" expression="execution(public * com.wang.service..*.*(..))"></aop:pointcut>
        <aop:advisor advice-ref="txAdvice" pointcut-ref="bussinessService"></aop:advisor>
    </aop:config>

    <bean id="UserService" class="com.wang.service.UserService"></bean>   <!--依赖注入,完成了new并把实现赋值给接口-->

    <bean id="userDao" class="com.wang.impl.UserDaoImpl"></bean>

    <bean id="logInterceptor" class="com.wang.aop.LogInterceptor"></bean>

    <bean id="logDao" class="com.wang.impl.LogDaoImpl"></bean>

    <bean id="hibernateTemplate" class="org.springframework.orm.hibernate5.HibernateTemplate">   hibernate事物,session,sessionfactory控制反转交给spring

        <property name="sessionFactory" ref="mySessionFactory"></property>

    </bean>

    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" > 配置数据源

        <property name="driverClassName" value="com.mysql.jdbc.Driver"></property>

        <property name="url" value="jdbc:mysql://localhost:3306/db_wind"></property>

        <property name="username" value="root"></property>

        <property name="password" value="1234"></property>

    </bean>

    <bean id="mySessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">  数据源关联,生成session工厂

        <property name="dataSource" ref="dataSource"></property>

    <!--

        <property name="mappingResources">

            <list>

                <value>com/wang/model/Log.hbm.xml</value>

                <value>com/wang/model/User.hbm.xml</value>

            </list>

        </property>

    -->

        <property name="packagesToScan"> 自动到包下查找hibernate注释的model

            <list>

                <value>com.wang.model</value>

            </list>

        </property>

        <property name="hibernateProperties">
hibernate属性配置

            <props>

                <prop key="hibernate.dialect">

                    org.hibernate.dialect.MySQLDialect

                </prop>

                <prop key="hibernate.show_sql">

                    true

                </prop>

            </props>

        </property>

    </bean>

    <bean id="txManger" class="org.springframework.orm.hibernate5.HibernateTransactionManager">
transactionManager配置,具体实现功能跟hibernateTemplate相似,具体区别不了解

        <property name="sessionFactory" ref="mySessionFactory"></property>

    </bean>

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

    <tx:advice id="txAdvice" transaction-manager="txManger">

        <tx:attributes>

            <tx:method name="add*" propagation="REQUIRED"/>

        </tx:attributes>

    </tx:advice>

    
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: