Spring4整合Hibernate5詳細步驟。本站提示廣大學習愛好者:(Spring4整合Hibernate5詳細步驟)文章只能為提供參考,不一定能成為您想要的結果。以下是Spring4整合Hibernate5詳細步驟正文
Spring與Hiberante整合
通過hibernate的學習,我們知道,hibernate主要在hibernate.cfg.xml配置文件中
接下來我們看一下hibernate的一個配置文件
hibernate配置文件
hibernate.cfg.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.org/dtd/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <!-- 指定連接數據庫所用的驅動 --> <property name="connection.driver_class">com.mysql.jdbc.Driver</property> <!-- 指定連接數據庫的url,其中hibernate是本應用連接的數據庫名 --> <property name="connection.url">jdbc:mysql://localhost/hibernate_test</property> <!-- 指定連接數據庫的用戶名 --> <property name="connection.username">root</property> <!-- 指定連接數據庫的密碼 --> <property name="connection.password">cheng</property> <!-- 指定連接池裡最大連接數 --> <property name="hibernate.c3p0.max_size">20</property> <!-- 指定連接池裡最小連接數 --> <property name="hibernate.c3p0.min_size">1</property> <!-- 指定連接池裡連接的超時時長 --> <property name="hibernate.c3p0.timeout">5000</property> <!-- 指定連接池裡最大緩存多少個Statement對象 --> <property name="hibernate.c3p0.max_statements">100</property> <property name="hibernate.c3p0.idle_test_period">3000</property> <property name="hibernate.c3p0.acquire_increment">2</property> <property name="hibernate.c3p0.validate">true</property> <!-- 指定數據庫方言 --> <property name="dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property> <!-- 根據需要自動創建數據表 --> <property name="hbm2ddl.auto">update</property><!--①--> <!-- 顯示Hibernate持久化操作所生成的SQL --> <property name="show_sql">true</property> <!-- 將SQL腳本進行格式化後再輸出 --> <property name="hibernate.format_sql">true</property> <!-- 避免這個錯誤信息Disabling contextual LOB creation as createClob() method threw error :java.lang.reflect.InvocationTargetException --> <property name="hibernate.temp.use_jdbc_metadata_defaults">false</property> <!-- 羅列所有持久化類的類名 --> <mapping class="com.wechat.entity.po.User"/> <mapping class="com.wechat.entity.po.Person"/> </session-factory> </hibernate-configuration>
配置文件的作用
hibernate.cfg.xml文件的主要作用就是配置了一個session-factory
當不采用spring整合的時候,我們使用hibernate時主要是用hibernate從sessionFactory中去的session,然後用session來操作持久化對象,而sessionFactory來自於配置文件。像下面這樣:
StandardServiceRegistry registry = null; SessionFactory sessionFactory = null; Session session = null; Transaction transaction = null; SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); @Before public void init() { registry = new StandardServiceRegistryBuilder() .configure() // configures settings from hibernate.cfg.xml .build(); sessionFactory = new MetadataSources( registry ).buildMetadata().buildSessionFactory(); session = sessionFactory.openSession(); //開始事務 transaction = session.getTransaction(); transaction.begin(); } @Test public void testSaveUser() { User user = new User(); user.setUsername("張學友"); user.setPassword("jacky"); user.setRegistDate(sdf.format(new Date())); File file = new File("D:"+File.separator+"ubuntu.png" />好了Spring整合hibernate就寫到這裡。
項目地址:https://github.com/peer44/testwechat
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持。