`
george.gu
  • 浏览: 73389 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Hibernate Configuration Properties

 
阅读更多

Hibenate configuration parameters

Here is a general hibernate session configuration file:

 

hibernate.cfg.xml

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>
  <session-factory>
    <property name="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</property>
    <property name="hibernate.use_outer_join">true</property>
    <property name="hibernate.show_sql">false</property>

    <!-- cache properties -->
    <property name="hibernate.cache.use_query_cache">false</property>
    <property name="hibernate.generate_statistics">false</property>
    <property name="hibernate.format_sql">true</property>
    <property name="hibernate.use_sql_comments">true</property>

    <property name="hibernate.jdbc.batch_size">20</property>

    <property name="hibernate.cache.use_second_level_cache">true</property>
    <property name="hibernate.cache.provider_class">net.sf.ehcache.hibernate.EhCacheProvider</property>
    <property name="net.sf.ehcache.configurationResourceName">/ehcache.xml</property>


    <!-- mapping files -->
    <mapping resource="domain.hbm.xml"/>

     <!--cache entities -->
    <class-cache class="com.wgu.domain.Attribute" usage="read-write"/>
    <collection-cache collection="com.wgu.domain.AttributeType.values" usage="read-write"/>

  </session-factory>
</hibernate-configuration>
 

 

For more details on the meaning of configuration properties,  please rerfer to Hibernate session configuration specification.

 

Integrate Hibernate with Spring

You may find out there are some critical properties missed in previous configuration file:

hibernate.connection.driver_class JDBC driver class
hibernate.connection.url JDBC URL
hibernate.connection.username database user
hibernate.connection.password database user password
hibernate.connection.pool_size maximum number of pooled connections

That's because we use hibernate with Spring.

 

Configure SessionFactory

 

  <bean id="mySessionFactory" lazy-init="true" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    <property name="configLocation">
      <value>classpath:/hibernate.cfg.xml</value>
    </property>
    <property name="hibernateProperties">
      <ref bean="hibernateProperties"/>
    </property>
    <property name="dataSource">
      <ref bean="DataSource"/>
    </property>
    <property name="lobHandler">
      <ref bean="LobHandler"/>
    </property>
  </bean>
 

 

Configure Datasource

JDBC Connection Configuration

<bean id="DataSource" lazy-init="true"
	class="org.apache.commons.dbcp.BasicDataSource" autowire="default"
	dependency-check="default">
	<property name="driverClassName">
		<value>oracle.jdbc.driver.OracleDriver
		</value>
	</property>
	<property name="url">
		<value>jdbc:oracle:thin:@${db.host}:${db.port}:${db.service}
		</value>
	</property>
	<property name="username">
		<value>${db.user}</value>
	</property>
	<property name="password">
		<value>${db.password}</value>
	</property>
	<property name="maxActive">
		<value>100</value>
	</property>
	<property name="defaultAutoCommit">
		<value>false</value>
	</property>
	<property name="testOnBorrow">
		<value>true</value>
	</property>
	<property name="minEvictableIdleTimeMillis">
		<value>5000</value>
	</property>
	<property name="timeBetweenEvictionRunsMillis">
		<value>10000</value>
	</property>
	<property name="numTestsPerEvictionRun">
		<value>5</value>
	</property>
	<property name="validationQuery">
		<value>SELECT COUNT(*) FROM DUAL</value>
	</property>
</bean>

 

Datasource JNDI Configuration

  <bean id="hibernateProperties" class="java.util.Properties">
    <constructor-arg index="0">
      <props>
        <prop key="hibernate.show_sql">false</prop>
        <prop key="hibernate.connection.datasource">java:comp/env/jdbc/dataSource</prop>
        <prop key="hibernate.transaction.manager_lookup_class">org.hibernate.transaction.WeblogicTransactionManagerLookup</prop>
      </props>
    </constructor-arg>
  </bean>

  <jee:jndi-lookup id="DataSource" jndi-name="dataSource"/>
 

 

Configure Hibernate use SSL through JDBC connection

<bean id="dataSource" class="oracle.jdbc.pool.OracleDataSource">
    <property name="URL"><value><!-- JDBC URL that specifies SSL connection --></value></property>
    <!-- other relevant properties, like user and password -->
    <property name="connectionProperties>
        <value>
            oracle.net.ssl_cipher_suites: (ssl_rsa_export_with_rc4_40_md5, ssl_rsa_export_with_des40_cbc_sha)
            oracle.net.ssl_client_authentication: false
            oracle.net.ssl_version: 3.0
            oracle.net.encryption_client: REJECTED 
            oracle.net.crypto_checksum_client: REJECTED
        </value>
    </property>
</bean>
 Please refer to stackoverflow.com.
分享到:
评论

相关推荐

    hibernate的dtd 包含hibernate.properties

    在这个主题中,我们主要关注的是Hibernate的配置文件`hibernate.properties`以及它的DTD(Document Type Definition)文件,包括`hibernate-configuration-3.0.dtd`和`hibernate-mapping-3.0.dtd`。 首先,`...

    hibernate-configuration-3.0.dtd、hibernate-mapping-3.0.dtd

    在实际应用中,`hibernate.properties`文件是Hibernate 5.0.7版本的配置文件,主要用于存储非XML格式的配置信息。它通常包含数据库连接信息、缓存策略、日志级别等设置。例如,`hibernate.connection.driver_class`...

    6 用Properties补充hibernate.cfg.xml配置

    本文将探讨如何使用`Properties`类来补充`hibernate.cfg.xml`的配置,以实现更加灵活和模块化的设置。 首先,`hibernate.cfg.xml`文件通常包含了以下关键元素: 1. **数据库连接信息**:如数据库URL、用户名、密码...

    hibernate配置properties

    ### Hibernate配置Properties详解 在Java开发环境中,Hibernate作为一款优秀的对象关系映射(ORM)框架,为开发者提供了高效且简洁的方式来进行数据库操作。而在Hibernate的实际应用过程中,合理的配置显得尤为重要...

    hibernate的dtd文件

    我们来深入探讨一下`hibernate.properties`、`hibernate-configuration-3.0.dtd`以及`hibernate-mapping-3.0.dtd`这三个关键文件及其在Hibernate中的作用。 首先,`hibernate.properties`是Hibernate的配置文件,它...

    hibernate.properties

    ## Properties for external configuration of Proxool hibernate.proxool.pool_alias pool1 ## Only need one of the following #hibernate.proxool.existing_pool true #hibernate.proxool.xml proxool.xml #...

    hibernate的DTD文件,三个文件都有

    hibernate开发时,必需用到的DTD文件,该压缩包含有所需的三个文件:hibernate.properties,hibernate-configuration-3.0.dtd,hibernate-mapping-3.0.dtd。

    hibernate源码分析一[启动过程]

    在启动Hibernate的过程中,首先通过`Configuration`类的构造函数,初始化`Configuration`实例,并加载配置文件`hibernate.cfg.xml`和`hibernate.properties`。然后,通过调用`Configuration`的`buildSessionFactory...

    Hibernate入门到精通

    核心配置文件(hibernate.properties)是用于配置 Hibernate 的核心配置信息的文件。该文件用于指定 Hibernate 的日志配置、缓存配置等。 Api 内置对象 Hibernate 提供了一些内置对象来帮助开发者快速地访问和操作...

    有关数据库连接的系统配置技术.PPT

    在创建SessionFactory对象时,可以加载资源映射文件,例如`hibernateConfiguration.addResource("Book.hbm.xml")`,并将其他属性设置为所需的值,如`hibernate.show_sql`。 另一方面,hibernate.cfg.xml文件提供了...

    hibernate工具类大全

    DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"&gt;`,确保配置文件的格式正确。 5. **Hibernate资料...

    hibernate-properties-customizer-example:HibernatePropertiesCustomizer的使用示例

    【hibernate-properties-customizer-example】是一个项目,展示了如何在Spring Boot应用中使用`HibernatePropertiesCustomizer`来自定义Hibernate配置。这个例子的核心是通过扩展Spring Boot的自动配置能力,来实现...

    Hibernate Tool 使用文档

    - **Standard Hibernate Configuration (&lt;configuration&gt;)**:配置Hibernate的基本设置。 - **Annotation-based Configuration ()**:基于注解的配置方式。 - **JPA-based configuration (&lt;jpaconfiguration&gt;)**...

    hibernate的中文问题的解决方案

    - 在项目的类路径下创建或找到`hibernate.properties`文件。 - 在此文件中添加以下属性来指定连接数据库时使用的字符集和是否支持Unicode: ```properties hibernate.connection.url=jdbc:mysql://localhost:...

    Eclipse上使用Hibernate

    在 Eclipse 中,您可以选择 File-&gt;New-&gt;Other-&gt;Hibernate-&gt;Hibernate Configuration File,然后选择 Oracle 的驱动程序和数据库连接信息。 生成实体类和 DAO 类 在生成实体类和 DAO 类之前,您需要生成.hbm.xml ...

    Hibernate大总结/Hibernate面试题大全

    但在某些情况下,可能会分开使用 `hibernate.properties` 和 `hibernate.cfg.xml` 两个文件: - `hibernate.properties`: 主要用于配置数据连接、二级缓存、连接池等信息。 - `hibernate.cfg.xml`: 主要用于配置...

    在Java SE中使用Hibernate处理数据

    这可以通过读取属性文件来实现,例如上面的`hibernate.properties`文件展示了基本的配置项,包括方言、驱动类、数据库连接信息和查询替换设置。 在处理数据时,Hibernate的核心组件Session和SessionFactory需要手动...

    hibernate知识点汇总

    5. **Hibernate 启动过程**:启动 Hibernate 时,`Configuration` 对象首先读取 `hibernate.properties`,然后可能通过 `configure()` 加载 `hibernate.cfg.xml`。最后,`buildSessionFactory()` 方法生成 `...

    hibernate3入门

    "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"&gt; &lt;hibernate-configuration&gt; &lt;!-- 设置是否显示SQL语句 --&gt; ...

Global site tag (gtag.js) - Google Analytics