1. 程式人生 > >Hibernate學習(2)- hibernate.cfg.xml詳解

Hibernate學習(2)- hibernate.cfg.xml詳解

source nec cfg 更新 閱讀 username 詳解 格式化sql BE

1:主配置文件主要分為三部分:
    註意:通常情況下,一個session-factory節點代表一個數據庫;
    1.1:第一部分
       數據庫連接部分,註意"hibernate.connection.driver_class"中間的 _;
    1.2:第二部分
       其他相關配置,包含打印sql語句,格式化sql語句,創建數據表或者更新數據表等等
    1.3:第三部分
       加載所有的映射;

<!DOCTYPE hibernate-configuration PUBLIC
    "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
    "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"
> <hibernate-configuration> <session-factory> <!-- 第一部分:數據連接配置 --> <property name="connection.driver_class">com.mysql.jdbc.Driver</property> <property name="connection.url">jdbc:mysql://localhost:3306/hibernate_test</property>
<property name="connection.username">json</property> <property name="connection.password">123456</property> <!-- 第二部分:其他相關配置 --> <!-- 數據庫方言 - 配置hibernate方言,可針對特定的數據庫優化。 --> <property name="dialect"
>org.hibernate.dialect.MySQL5Dialect</property> <!-- 是否在運行時候sql語句輸出到控制臺,編碼階段便於測試的。(默認設置為true)--> <property name="show_sql">true</property> <!-- 輸出在控制臺sql語句是否進行格式化,便於閱讀。(默認設置為true) --> <property name="format_sql">true</property> <!-- 可幫助由java代碼生成數據庫腳本,進而生成具體表結構。如:create/update/create-drop/validate create: 每次都重新建表,原來的表刪除,同時數據全部清楚重新插入數據。(每次加載hibernate,重新創建數據庫表結構,這就是導致數據庫表數據丟失的原因。) create-drop: 每次在創建sessionFactory時執行創建表,當調用sessionFactory的close方法的時候,刪除表 (在實際項目中不用) update: 只是根據映射文件去和數據庫中的表對應起來,如果不一致,就更新表的結構 validate: 加載hibernate時,驗證創建數據庫表結構,如果是不同的話則不創建表。 PS: 1.請慎重使用 hbm2ddl.auto 此參數,沒必要就不要隨便用。 2.如果發現數據庫表丟失,請檢查hibernate.hbm2ddl.auto的配置 --> <property name="hbm2ddl.auto">update</property> <!-- 第三部分:加載所有的映射(*.hbm.xml) --> <mapping resource="com/demo/pojo/User.hbm.xml"></mapping> </session-factory> </hibernate-configuration>

PS:原文地址 http://www.cnblogs.com/JsonShare/p/8647559.html

Hibernate學習(2)- hibernate.cfg.xml詳解