首页 > 其他分享 >Spring5 整合 Hibernate5 学习

Spring5 整合 Hibernate5 学习

时间:2022-11-30 21:10:08浏览次数:42  
标签:Hibernate5 www http -- springframework 整合 org schema Spring5


Spring5 整合 Hibernate5 学习

XML配置文件代码如下

[html] ​​view plain​​ ​​copy​​

  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <beans xmlns="http://www.springframework.org/schema/beans"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xmlns:context="http://www.springframework.org/schema/context"
  5. xmlns:tx="http://www.springframework.org/schema/tx"
  6. xmlns:aop="http://www.sprin​​gframework.org/schema/aop"
  7. xsi:schemaLocation="http://www.springframework.org/schema/beans  
  8.         http://www.springframework.org/schema/beans/spring-beans.xsd  
  9.         http://www.springframework.org/schema/context  
  10.         http://www.springframework.org/schema/context/spring-context.xsd  
  11.         http://www.springframework.org/schema/tx    
  12.         http://www.springframework.org/schema/tx/spring-tx.xsd  
  13.         http://www.springframework.org/schema/aop  
  14.         http://www.springframework.org/schema/aop/spring-aop.xsd">  
  15. ​  ​​​
  16. <!--     开启annotation配置 -->
  17.     <context:annotation-config/>  
  18. <!--    扫描以com开头的包里边的bean -->
  19.     <context:component-scan base-package="com"/>  
  20.       
  21.     <bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">  
  22.         <property name="driverClassName" value="com.mysql.jdbc.Driver"/>  
  23.         <property name="url" value="jdbc:mysql://localhost:3306/bls"/>  
  24.         <property name="username" value="root"/>  
  25.         <property name="password" value="ytfmnm"/>  
  26.     </bean>  
  27.       
  28.     <bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">  
  29.         <property name="dataSource" ref="dataSource"/>  
  30. <!--     Annotation方式 -->
  31. <!--         <property name="annotatedClasses"> -->
  32. <!--             <list> -->
  33. <!--                 <value>com.test_spring.mode.User</value> -->
  34. <!--                 <value>com.test_spring.mode.Log</value> -->
  35. <!--             </list> -->
  36. <!--         </property> -->
  37. <!--         包扫描添加映射类 -->
  38.         <property name="packagesToScan">  
  39.             <list>  
  40.                 <value>com.test_spring.mode</value>  
  41.             </list>  
  42.         </property>  
  43.           
  44. <!--         xml方式 -->
  45. <!--         <property name="mappingResources"> -->
  46. <!--             <list> -->
  47. <!--                 <value>product.hbm.xml</value> -->
  48. <!--             </list> -->
  49. <!--         </property> -->
  50.           
  51.         <property name="hibernateProperties">  
  52.             <props>  
  53.                 <prop key="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</prop>  
  54.                 <prop key="hibernate.show_sql">true</prop>  
  55.                 <prop key="hibernate.format_sql">true</prop>  
  56.                 <prop key="hibernate.show_sql">true</prop>  
  57.                 <prop key="hibernate.hbm2ddl.auto">create</prop>  
  58.             </props>  
  59.         </property>   
  60.     </bean>  
  61.       
  62. <!--         事务管理 Annotation配置  -->
  63. <!--         <bean id="txManager" class="org.springframework.orm.hibernate5.HibernateTransactionManager">   -->
  64. <!--             <property name="sessionFactory" ref="sessionFactory"/>   -->
  65. <!--         </bean>   -->
  66. <!--      开启annotation事务管理    -->
  67. <!--         <tx:annotation-driven transaction-manager="txManager"/>  -->
  68.   
  69. <!--     事务管理XML配置  这是Hibernate的管理事务类 -->
  70.     <bean id="txManager" class="org.springframework.orm.hibernate5.HibernateTransactionManager">  
  71.         <property name="sessionFactory" ref="sessionFactory"/>  
  72.     </bean>  
  73.           
  74. <!--     利用AOP方式给方法加上事务管理 -->
  75.     <aop:config>  
  76.         <aop:pointcut expression="execution(public * com.test_spring..service..*.*(..))" id="txPo"/>  
  77.         <aop:advisor advice-ref="txPoo" pointcut-ref="txPo"/>  
  78.     </aop:config>  
  79.       
  80. <!--     具体定义哪些方法需要加上事务管理 -->
  81.     <tx:advice id="txPoo" transaction-manager="txManager">  
  82.         <tx:attributes>  
  83.             <tx:method name="add"/>  
  84.         </tx:attributes>  
  85.     </tx:advice>  
  86. </beans>  

 

 

使用方面Annotation方式      XML方式只需要在XML配置文件写就可以

[java] ​​view plain​​ ​​copy​​

  1. @Component("u")  
  2. public class UserService {  
  3.     private UserDAO userDAO;  
  4.       
  5.     public UserDAO getUserDAO() {  
  6.         return userDAO;  
  7.     }  
  8.   
  9. @Resource(name="userDAOIml")  
  10.     public void setUserDAO(UserDAO userDAO) {  
  11.         this.userDAO = userDAO;  
  12.     }  
  13.       
  14.     public void delete(Student student) {  
  15.         userDAO.delete(student);  
  16.     }  
  17. //不用加BegTransaction和commit了。直接在里边用save对象就行
  18. @Transactional
  19.     public void save(Student student) {  
  20.         userDAO.save(student);  
  21.     }  
  22. }  
  23.  

标签:Hibernate5,www,http,--,springframework,整合,org,schema,Spring5
From: https://blog.51cto.com/u_13363083/5900498

相关文章