hibernate:相關配置

<!-- 必須的配置 -->
    <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,並且刪掉多一方已經接觸掉關係的數據

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章