Hibernate配置属性
属性名 用途
hibernate.dialect Hibernate方言(Dialect)的类名 - 可以让Hibernate使用某些特定的数据库平台的特性
取值. full.classname.of.Dialect
hibernate.default_schema 在生成的SQL中,scheml/tablespace的全限定名
取值. SCHEMA_NAME
hibernate.session_factory_name 自动把创建的SessionFactory以这个名字绑定到JNDI中去.
取值. jndi/composite/name
hibernate.use_outer_join 允许使用外连接抓取。已经失效。请使用max_fetch_depth。
取值. true | false
hibernate.max_fetch_depth 对单根联合(一对一,多对一),设置外连接抓取树的最大深度。如果是0将关闭默认的外连接抓取。
取值. 建议设置为0到3之间
hibernate.jdbc.fetch_size 一个非零值,用来决定JDBC的获取量大小。(会调用Statement.setFetchSize()).
hibernate.jdbc.batch_size 一个非零值,会开启Hibernate使用JDBC2的批量更新功能
取值. 建议值在 5 和 30之间。
hibernate.jdbc.use_scrollable_resultset 允许Hibernate使用JDBC2提供的可滚动结果集。只有在使用用户自行提供的JDBC连接时,这个参数才是必需的。否则Hibernate会使用连接的元数据(metadata)。
取值. 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。默认情况下,会用connection元数据根据驱动是否支持自动判断。
取值. true|false
hibernate.cglib.use_reflection_optimizer 是否使用CGLIB来代替运行时反射操作。(系统级别属性,默认为在可能时都使用CGLIB).在调试的时候有时候使用反射会有用。
取值. true | false
hibernate.jndi.<propertyName> 把propertyName这个属性传递到JNDI InitialContextFactory去 (可选)
hibernate.connection.isolation 事务隔离级别 (可选).请检查java.sql.Connection来得到取值的具体意义。注意大多数数据库不会支持所有的隔离级别。
取值. 1, 2, 4, 8
hibernate.connection.<propertyName> 把 propertyName这个JDBC 属性传递到DriverManager.getConnection()去
hibernate.connection.provider_class 指定一个自定义的ConnectionProvider类名
取值. classname.of.ConnectionProvider
hibernate.cache.provider_class 指定一个自定义的CacheProvider缓存提供者的类名
取值. classname.of.CacheProvider
hibernate.cache.use_minimal_puts 优化第二级缓存操作,减少写操作,代价是读操作更频繁(对于集群缓存很有用)
取值. true|false
hibernate.cache.use_query_cache 打开查询缓存,每个查询仍然必须指明cacheable。
取值. true|false
hibernate.cache.region_prefix 用于第二级缓存区域名字的前缀
取值. prefix
hibernate.transaction.factory_class 指定一个自定义的TransactionFactory类名,Hibernate Transaction API将会使用(默认是JDBCTransactionFactory)。
取值. classname.of.TransactionFactory
jta.UserTransaction JTATransactionFactory 用来从应用服务器获取JTA UserTransaction的JNDI名
取值. jndi/composite/name
hibernate.transaction.manager_lookup_class TransactionManagerLookup的类名 - 当在JTA环境中,JVM级别的缓存被打开的时候使用.
取值. classname.of.TransactionManagerLookup
hibernate.query.substitutions 把Hibernate查询中的一些短语替换为SQL短语(比如说短语可能是函数或者字符)。
取值. hqlLiteral=SQL_LITERAL, hqlFunction=SQLFUNC
hibernate.show_sql 把所有的SQL语句都输出到控制台
取值. true | false
hibernate.hbm2ddl.auto 在SessionFactory创建后,自动输出schema创建DDL语句到数据库.和create-drop同时使用的话,数据库schema会在SessionFactory显式关闭后被drop掉。
取值. update | create | create-drop
分享到:
相关推荐
### Hibernate可选配置详解 #### 一、Hibernate配置项概览 Hibernate作为一款优秀的Java持久层框架,提供了丰富的配置选项,以适应不同场景下的需求。本文档将详细解析Hibernate的各种可选配置,帮助开发者深入...
4. **可选配置属性**: - `hibernate.show_sql`:如果设置为`true`,Hibernate会在控制台输出所有执行的SQL语句,便于调试。 - `hibernate.format_sql`:若设置为`true`,将使输出的SQL格式更美观,易于阅读。 - ...
配置Hibernate数据源是一项基础而重要的任务,涉及在Java应用程序中集成和使用Hibernate框架以及MySQL数据库。以下内容旨在详细介绍如何在MyEclipse开发环境中配置Hibernate数据源,同时解释相关概念和步骤。 首先...
- `hibernate.connection.pool_size`:连接池的最大容量,如C3P0连接池的配置项。 2. **C3P0连接池配置**: - `hibernate.c3p0.min_size`:最小连接数。 - `hibernate.c3p0.max_size`:最大连接数。 - `...
本文将详细介绍`hibernate.cfg.xml`中各个配置项的意义及其可能的取值,帮助开发者更好地理解和应用这些配置。 #### 二、核心配置属性 ##### 1. `hibernate.dialect` **用途**:指定Hibernate使用的方言(Dialect...
7. **hibernate.hbm2ddl.auto**:指定数据库表的创建策略,可选值有 create、create-drop、update、validate 等。 这些配置项对于正确设置 Hibernate 的运行环境至关重要,通过合理的配置可以提高应用程序的性能并...
本文将详细解析 `hibernate-mapping` 文件中的各种关键配置项及其含义。 #### 1. default-access (可选 - 默认为 property) 此属性用于指定 Hibernate 访问实体类属性的方式,默认为通过 getter 和 setter 方法...
5. **生成代码**:完成设置后,点击“生成”按钮,Hibernate Tool会根据数据库表结构生成对应的实体类、映射文件以及可选的DAO层代码。生成的代码通常会遵循Java Bean规范,包含私有字段、getter和setter方法以及@...
`optional`目录可能包含了一些非强制性的、可选的库文件,它们可能提供了额外的功能或扩展,例如特定的缓存实现、日志库或其他第三方工具。开发者可以根据项目需求选择性地引入这些库。 `bytecode`可能指的是...
4. **缓存配置**:可选配置,用于设置二级缓存,提高数据访问性能。 5. **实体类扫描路径**:告诉Hibernate哪些包下的类是需要映射到数据库的实体类。 其次,描述中提到的"在JavaBean所在的包下映射的配置文件"通常...
2. **实体类映射文件**(可选):实体类可以使用XML映射文件(如User.hbm.xml)或注解方式(如上例所示)进行映射。 ### 四、基本操作 1. **SessionFactory创建**:使用配置文件创建SessionFactory实例,它是线程...
这些配置项可以帮助开发者更加灵活地管理 Java 应用程序中的集合数据,并有效地将其映射到关系型数据库中。了解这些细节有助于开发者更好地掌握 Hibernate 的使用方法,提高开发效率和代码质量。
这个jar包含了一些可选依赖项,例如用于特定功能的库,这些功能可能不是所有用户都需要的。例如,某些功能可能需要特定的数据库驱动或者外部库才能工作。 #### 11. c3p0.jar C3P0 是一个开源的JDBC连接池实现,它...
**1.2.5 可选配置属性** Hibernate还提供了许多可选的配置属性,如事务隔离级别、查询超时等,以满足更复杂的使用场景。 ###### 1.3 方言 **1.3.1 指定要使用的方言** 方言用于将SQL语句转换成特定数据库的语法...
2. **配置POM.xml**:在POM.xml文件中,添加必要的依赖,包括Hibernate核心库、JDBC驱动(对应MySQL的情况)、Spring Framework(可选,用于更高级的管理)以及其他辅助库。例如: ```xml <groupId>org....
- **可选配置属性**:列举了一系列可选配置项,如 SQL 方言、外键查询等,以满足不同场景的需求。 - **日志记录**:介绍了如何配置 Hibernate 的日志记录系统,以捕获执行的 SQL 语句和其他调试信息。 - **命名策略*...
- `hibernate.dialect`:指定使用的方言,这里可选`org.hibernate.dialect.H2Dialect`。 - `hibernate.connection.driver_class`:数据库驱动类。 - `hibernate.connection.username` 和 `hibernate.connection....