<!-- 必須的配置 -->
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/hibernate</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">123456</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</property>
<!-- 非必須的配置項 -->
<property name="hibernate.show_sql">true</property>
//打印sql語句
<property name="hibernate.format_sql">true</property>
//設置sql語句格式
<property name="hibernate.hbm2ddl.auto">update</property>
<property name="hibernate.current_session_context_class">thread</property>
//綁定當前session
二級緩存配置文件
hibernate.cfg.xml
<!-- 開啓二級 緩存-->
<property name="hibernate.cache.use_second_level_cache">true</property>
<!--配置使用的二級緩存 -->
<property name="cache.region.factory_class">
org.hibernate.cache.ehcache.EhCacheRegionFactory</property>
<!-- 開啓查詢緩存 hql查詢緩存到二級緩存 -->
<property name="hibernate.cache.use_query_cache">true</property>
<!-- 把映射文件引進來 -->
<mapping resource="com/qf/pojo/Users.hbm.xml"/>
<mapping resource="com/qf/pojo/Money.hbm.xml"/>
<mapping resource="com/qf/pojo/Order.hbm.xml"/>
<!-- 配置二級緩存 來緩存哪些類 -->
<class-cache usage="read-only" class="com.qf.pojo.User"/>
<class-cache usage="read-only" class="com.qf.pojo.Order"/>
<!-- 配置緩存哪些集合 -->
<collection-cache usage="read-only" collection="com.qf.pojo.User.orderSet"/>
配置日誌文件 logj.propertise
#
# Hibernate, Relational Persistence for Idiomatic Java
#
# License: GNU Lesser General Public License (LGPL), version 2.1 or later.
# See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
#
### direct log messages to stdout ###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.err<!--in or out -->
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
### direct messages to file hibernate.log ###
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.File=D://hibernate.log<!--日誌文件存儲位置 -->
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
### set log levels - for more verbose logging change 'info' to 'debug' ###
log4j.rootLogger=info<!--日誌級別:ALL < DEBUG < INFO < WARN < ERROR < FATAL < OFF,-->,stdout<!--標準輸出-->,file<!--輸出類型-->
小知識點
inverse:true;當前類放棄對外建表的維護,在many-to-many中 必須由一方設置inverse=true;
*dynamic-insert*=”true”:insert時沒有值的數據不會被打印
dynamic-update=”true”update時沒有值的數據不會被打印
cascade=”delete-orphan”: 孤兒刪除,多的一方接觸關係時,外鍵值設爲null,並且刪掉多一方已經接觸掉關係的數據