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

hibernate.config.xml参数

阅读更多

hibernate有很多参数,通过合理配置这些参数,可以对提高Hibernate框架下对象的效率,从而实现对J2ee应用的优化。
这些参数如下:

参数 用途
hibernate.dialect 一个Hibernate Dialect类名允许Hibernate针对特定的关系数据库生成优化的SQL. 取值 full.classname.of.Dialect
hibernate.show_sql 输出所有SQL语句到控制台. 有一个另外的选择是把org.hibernate.SQL这个log category设为debugeg. true | false
hibernate.format_sql 在log和console中打印出更漂亮的SQL。 取值 true | false
hibernate.default_schema 在生成的SQL中, 将给定的schema/tablespace附加于非全限定名的表名上. 取值 SCHEMA_NAME
hibernate.default_catalog 在生成的SQL中, 将给定的catalog附加于非全限定名的表名上. 取值 CATALOG_NAME
hibernate.session_factory_name SessionFactory创建后,将自动使用这个名字绑定到JNDI中. 取值 jndi/composite/name
hibernate.max_fetch_depth 为单向关联(一对一, 多对一)的外连接抓取(outer join fetch)树设置最大深度. 值为0意味着将关闭默认的外连接抓取. 取值 建议在03之间取值
hibernate.default_batch_fetch_size 为Hibernate关联的批量抓取设置默认数量. 取值 建议的取值为4, 8, 和16
hibernate.default_entity_mode 为由这个SessionFactory打开的所有Session指定默认的实体表现模式. 取值 dynamic-map, dom4j, pojo
hibernate.order_updates 强制Hibernate按照被更新数据的主键,为SQL更新排序。这么做将减少在高并发系统中事务的死锁。 取值 true | false
hibernate.generate_statistics 如果开启, Hibernate将收集有助于性能调节的统计数据. 取值 true | false
hibernate.use_identifer_rollback 如果开启, 在对象被删除时生成的标识属性将被重设为默认值. 取值 true | false
hibernate.use_sql_comments 如果开启, Hibernate将在SQL中生成有助于调试的注释信息, 默认值为false. 取值 true | false

表 3.4. Hibernate JDBC和连接(connection)属性

属性名 用途
hibernate.jdbc.fetch_size 非零值,指定JDBC抓取数量的大小 (调用Statement.setFetchSize()).
hibernate.jdbc.batch_size 非零值,允许Hibernate使用JDBC2的批量更新. 取值 建议取530之间的值
hibernate.jdbc.batch_versioned_data 如果你想让你的JDBC驱动从executeBatch()返回正确的行计数 , 那么将此属性设为true(开启这个选项通常是安全的). 同时,Hibernate将为自动版本化的数据使用批量DML. 默认值为false. eg. true | false
hibernate.jdbc.factory_class 选择一个自定义的Batcher. 多数应用程序不需要这个配置属性. eg. classname.of.Batcher
hibernate.jdbc.use_scrollable_resultset 允许Hibernate使用JDBC2的可滚动结果集. 只有在使用用户提供的JDBC连接时,这个选项才是必要的, 否则Hibernate会使用连接的元数据. 取值 true | false
hibernate.jdbc.use_streams_for_binary 在JDBC读写binary (二进制)serializable (可序列化) 的类型时使用流(stream)(系统级属性). 取值 true | false
hibernate.jdbc.use_get_generated_keys 在数据插入数据库之后,允许使用JDBC3 PreparedStatement.getGeneratedKeys() 来获取数据库生成的key(键)。需要JDBC3+驱动和JRE1.4+, 如果你的数据库驱动在使用Hibernate的标 识生成器时遇到问题,请将此值设为false. 默认情况下将使用连接的元数据来判定驱动的能力. 取值 true|false
hibernate.connection.provider_class 自定义ConnectionProvider的类名, 此类用来向Hibernate提供JDBC连接. 取值 classname.of.ConnectionProvider
hibernate.connection.isolation 设置JDBC事务隔离级别. 查看java.sql.Connection来了解各个值的具体意义, 但请注意多数数据库都不支持所有的隔离级别. 取值 1, 2, 4, 8
hibernate.connection.autocommit 允许被缓存的JDBC连接开启自动提交(autocommit) (不建议). 取值 true | false
hibernate.connection.release_mode 指定Hibernate在何时释放JDBC连接. 默认情况下,直到Session被显式关闭或被断开连接时,才会释放JDBC连接. 对于应用程序服务器的JTA数据源, 你应当使用after_statement, 这样在每次JDBC调用后,都会主动的释放连接. 对于非JTA的连接, 使用after_transaction在每个事务结束时释放连接是合理的. auto将为JTA和CMT事务策略选择after_statement, 为JDBC事务策略选择after_transaction. 取值 on_close | after_transaction | after_statement | auto
hibernate.connection.<propertyName> 将JDBC属性propertyName传递到DriverManager.getConnection()中去.
hibernate.jndi.<propertyName> 将属性propertyName传递到JNDI InitialContextFactory中去.

表 3.9. Hibernate日志类别

类别 功能
org.hibernate.SQL 在所有SQL DML语句被执行时为它们记录日志
org.hibernate.type 为所有JDBC参数记录日志
org.hibernate.tool.hbm2ddl 在所有SQL DDL语句执行时为它们记录日志
org.hibernate.pretty 在session清洗(flush)时,为所有与其关联的实体(最多20个)的状态记录日志
org.hibernate.cache 为所有二级缓存的活动记录日志
org.hibernate.transaction 为事务相关的活动记录日志
org.hibernate.jdbc 为所有JDBC资源的获取记录日志
org.hibernate.hql.AST 在解析查询的时候,记录HQL和SQL的AST分析日志
org.hibernate.secure 为JAAS认证请求做日志
org.hibernate 为任何Hibernate相关信息做日志 (信息量较大, 但对查错非常有帮助)

表 3.10. JTA TransactionManagers

Transaction工厂类 应用程序服务器
org.hibernate.transaction.JBossTransactionManagerLookup JBoss
org.hibernate.transaction.WeblogicTransactionManagerLookup Weblogic
org.hibernate.transaction.WebSphereTransactionManagerLookup WebSphere
org.hibernate.transaction.WebSphereExtendedJTATransactionLookup WebSphere 6
org.hibernate.transaction.OrionTransactionManagerLookup Orion
org.hibernate.transaction.ResinTransactionManagerLookup Resin
org.hibernate.transaction.JOTMTransactionManagerLookup JOTM
org.hibernate.transaction.JOnASTransactionManagerLookup JOnAS
org.hibernate.transaction.JRun4TransactionManagerLookup JRun4
org.hibernate.transaction.BESTransactionManagerLookup Borland ES

评论

相关推荐

    hibernate.cfg.xml文件

    总结,`hibernate.cfg.xml`文件是Hibernate的命脉,它定义了数据库连接参数、实体类映射等核心配置,是理解Hibernate工作原理的关键。熟练掌握其配置不仅能提升开发效率,还能更好地优化数据库操作,降低系统资源...

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

    在Hibernate的配置中,`hibernate.cfg.xml`文件是核心配置文件,用于设定数据库连接、实体类映射等关键参数。本文将探讨如何使用`Properties`类来补充`hibernate.cfg.xml`的配置,以实现更加灵活和模块化的设置。 ...

    Tomcat配置hibernate xml模板

    &lt;param-name&gt;hibernateConfig &lt;param-value&gt;/WEB-INF/classes/hibernate.cfg.xml ... &lt;listener-class&gt;org.hibernate.context.HttpSessionContextInitializer ... ``` 4. **配置数据源**:在某些情况...

    springboot集成hibernate

    public class HibernateConfig { @Autowired private DataSource dataSource; @Bean public LocalSessionFactoryBean sessionFactory() { LocalSessionFactoryBean sessionFactory = new ...

    Struts_Hibernate.rar

    struts-config.xml中需要配置Action和ActionForward,而hibernate.cfg.xml则需要设置数据库连接参数、实体类映射等信息。同时,还需要在web.xml中配置Struts的DispatcherServlet和Hibernate的SessionFactory。 在...

    Struts_Hibernate.zip

    2. 配置文件:struts-config.xml、hibernate.cfg.xml、web.xml等,用于配置Struts和Hibernate的工作环境。 3. 数据库脚本:用于创建与Hibernate映射的数据库表。 4. 测试用例:可能包含JUnit测试,用于验证Struts和...

    org.springframework.orm.hibernate3.LocalSessionFactoryBean

    public class HibernateConfig { @Bean public LocalSessionFactoryBean sessionFactory() { LocalSessionFactoryBean sessionFactory = new LocalSessionFactoryBean(); sessionFactory.setDataSource...

    SpringStrutsHibernate.zip

    5. **struts-config.xml**:Struts的配置文件,定义了Action和ActionMapping,以及请求的转发路径。 6. **spring-context.xml**:Spring的配置文件,定义了Bean的配置和依赖关系。 在实际开发中,SSH组合可以有效地...

    Struts+Spring+Hibernate.rar例子

    1. **配置文件**:如struts-config.xml、spring-context.xml和hibernate.cfg.xml,分别用于配置Struts、Spring和Hibernate。 2. **实体类(Entity Classes)**:这些Java类代表数据库中的表,包含了ORM的注解。 3. *...

    struts_spring_hibernate .JAR包

    在实际应用中,开发者可能还需要配置Struts的配置文件(如struts-config.xml或struts2的struts.xml),Spring的配置文件(如applicationContext.xml),以及Hibernate的配置文件(如hibernate.cfg.xml)。...

    Hibernate XML配置表映射实例

    首先,Hibernate的XML配置文件通常被称为`hibernate.cfg.xml`,它是连接数据库、定义SessionFactory等核心设置的地方。在这个文件中,我们需要配置数据库连接信息,如URL、用户名、密码以及JDBC驱动类。例如: ```...

    flex和spring和hibernate.doc

    在`services-config.xml`中配置此工厂,以便Flex数据服务可以使用它: ```xml &lt;factory id="spring" class="flex.samples.factories.SpringFactory" /&gt; ``` 此外,确保已将Spring的相关库(如`spring-context`...

    零基础学Java.Web开发:JSP.Servlet.Struts.Spring.Hibernate.Ajax(PPT)

    Struts通过Action类、配置文件(struts-config.xml)以及一系列拦截器实现业务逻辑与视图的解耦。学习Struts需要理解ActionForm、Tiles、Validator等核心概念。 4. **Spring** Spring框架是企业级Java应用的首选,...

    Spring集成Struts、Hibernate.pdf

    - **配置文件**:在`struts-config.xml`文件中加入以下代码。 ```xml &lt;struts-config&gt; &lt;!-- 其他配置 --&gt; &lt;plug-in className="org.springframework.web.struts.ContextLoaderPlugIn" /&gt; &lt;/struts-config&gt; ``...

    整合Spring+Hibernate.doc

    在XML中,我们声明了`context:annotation-config`,这使得Spring能够自动检测并处理注解,例如@Service、@Repository和@Controller等。然后,通过`context:property-placeholder`引入了`jdbc.properties`文件,用于...

    hibernate于各大数据库的连接

    在Hibernate中,数据库连接配置主要通过`hibernate.cfg.xml`文件完成。以下是配置的一些关键元素: 1. **driver_class**: 指定数据库驱动类,如MySQL的`com.mysql.jdbc.Driver`,Oracle的`oracle.jdbc.driver....

    Struts_Hibernate.pdf

    4. **配置Hibernate**:创建hibernate.cfg.xml,配置数据库连接信息和SessionFactory。如果使用注解,还需要在实体类上添加对应的注解。 5. **编写Action和Form Bean**:Action处理用户请求,调用DAO进行业务操作。...

    hibernate第一个例子

    Configuration config = new Configuration().configure("hibernate.cfg.xml"); SessionFactory sessionFactory = config.buildSessionFactory(); Session session = sessionFactory.openSession(); } } ``` ...

    Struts-spring-Hibernate.

    - 第二种方法是在Struts的配置文件(struts-config.xml或struts2的struts.xml)中添加`ContextLoaderPlugIn`插件,同样指明配置文件路径。 3. **Hibernate框架**:Hibernate是一个对象关系映射(ORM)工具,简化了...

    hibernate.zip

    Configuration config = new Configuration().configure("hibernate.cfg.xml"); ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder(config).build(); SessionFactory sessionFactory = config....

Global site tag (gtag.js) - Google Analytics