




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、表 3.3. hibernate 配置属性属性名用途hibernate.dialect一个 hibernate dialect类名允许 hibernate针对特定的关系数据库生成优化的sql. 取值 full.classname.of.dialecthibernate.show_sql输出所有 sql 语句到控制台 . 有一个另外的选择是把org.hibernate.sql这个 log category设为 debug 。eg. true | falsehibernate.format_sql在 log 和 console中打印出更漂亮的sql。取值 true | falsehibernate
2、.default_schema在生成的 sql 中, 将给定的 schema/tablespace附加于非全限定名的表名上. 取值 schema_namehibernate.default_catalog在生成的 sql 中, 将给定的 catalog附加于非全限定名的表名上 . 取值 catalog_namehibernate.session_factory_namesessionfactory创建后,将自动使用这个名字绑定到jndi 中. 取值 jndi/composite/namehibernate.max_fetch_depth为单向关联 (一对一 , 多对一 )的外连接抓取(oute
3、r join fetch )树设置最大深度. 值为 0 意味着将关闭默认的外连接抓取 . 取值 建议在 0 到 3 之间 取值hibernate.default_batch_fetch_size为 hibernate关联的 批量 抓取设置默认数 量. 取值 建议的取值为4, 8 , 和 16hibernate.default_entity_mode为由这个 sessionfactory打开的所有 session 指定默认的 实体 表现模式 . 取值 dynamic-map, dom4j , pojohibernate.order_updates强制 hibernate按照被 更新数据的 主键
4、, 为 sql 更新排序。这 么做 将减少 在高并发 系统中事务 的死锁 。取值 true | falsehibernate.generate_statistics如果开启 , hibernate将收集 有助于性 能调节 的统计 数据. 取值 true | falsehibernate.use_identifer_rollback如果开启 , 在对 象被删除时 生成的 标识 属性将 被重 设为默认值 . 取值 true | false属性名用途hibernate.use_sql_comments如果开启 , hibernate将在 sql 中生成有 助于调试 的注释信息 , 默认值为 fals
5、e. 取值 true | false表 3.4. hibernate jdbc和连接 (connection) 属性属性名用途hibernate.jdbc.fetch_size非零值, 指定 jdbc 抓取数 量的大 小 (调用statement.setfetchsize(). hibernate.jdbc.batch_size非零值,允许 hibernate使用 jdbc2 的批量 更新. 取值 建议取 5 到 30 之间 的值hibernate.jdbc.batch_versioned_data如果你想让你 的 jdbc 驱动从 executebatch()返回正确 的行计 数 , 那么
6、将此属性设为 true(开启 这个选项通常 是安全的 ). 同时 , hibernate将为自动 版本 化的数据使用 批量 dml. 默认值为 false. eg. true | falsehibernate.jdbc.factory_class选择一个自定 义的 batcher. 多数 应用程序不需要 这个配置属性 . eg. classname.of.batcherhibernate.jdbc.use_scrollable_resultset允许 hibernate使用 jdbc2 的可滚 动结果集 . 只有在使用用 户提供 的 jdbc 连接 时,这个选 项才 是必要 的, 否则 hib
7、ernate会使用连接的 元数据 . 取值 true | falsehibernate.jdbc.use_streams_for_binary在 jdbc 读写 binary (二进制 ) 或 serializable ( 可序列化 ) 的类 型时使用 流(stream)( 系统级属性). 取值 true | falsehibernate.jdbc.use_get_generated_keys在数据 插入 数据库 之后,允许使用jdbc3 preparedstatement.getgeneratedkeys()来获 取数据库生成的key( 键)。需要 jdbc3+ 驱动和 jre1.4+, 如
8、果你 的数据库 驱动在使用 hibernate的标 识生成 器时 遇到问题 ,请将此值设为 false. 默认 情况下 将使用连接的 元数据 来判 定驱动的 能力. 取值 true|vider_class自定 义 connectionprovider的类名 , 此类用 来向hibernate提供 jdbc 连接 . 取值 classname.of.connectionproviderhibernate.connection.isolation设置 jdbc 事务 隔离级别 . 查看java.sql.connection来了解各 个值的
9、具体意义, 但请 注意多数数据库 都不支持 所有的 隔离级别 . 属性名用途取值 1, 2, 4, 8hibernate.connection.autocommit允许 被缓存 的 jdbc 连接 开启 自动 提交(autocommit) (不建议 ). 取值 true | falsehibernate.connection.release_mode指定 hibernate在何时释 放 jdbc 连接 . 默认 情况下 ,直到 session 被显式关闭 或被断开连接 时,才会释 放jdbc 连接 . 对于 应用程序 服务器的 jta 数据 源, 你应当使用 after_statement,
10、这样在每次 jdbc 调用后, 都会主 动的 释放连接 . 对于非 jta 的连接 , 使用after_transaction在每个事务结 束时释 放连接是合理 的. auto将为 jta 和 cmt 事务 策略 选择after_statement, 为 jdbc 事务 策略选择after_transaction. 取值 auto (默认 ) | on_close | after_transaction | after_statement注意,这些设置 仅对通过sessionfactory.opensession得到的 session起作 用。对于 通过sessionfactory.getcu
11、rrentsession得到的session,所配置的currentsessioncontext实现控制这 些 session的连接 释放模式 。请参阅第 2.5 节 “上下文相 关的( contextual)session ”。hibernate.connection.将 jdbc 属性 propertyname传递 到drivermanager.getconnection()中去. hibernate.jndi.将属性 propertyname传递 到jndi initialcontextfactory中去. 表 3.5. hibernate 缓存 属性属性名用途hibernate.cac
12、vider_class自定 义的 cacheprovider的类名 . 取值 classname.of.cacheproviderhibernate.cache.use_minimal_puts以频繁 的读操作 为代价 , 优化 二级缓存来 最小化写操作 . 在 hibernate3中,这个设置对的集群缓存非常有用 , 对集群缓存 的实现 而言 ,默认是 开启 的. 取值 true|falsehibernate.cache.use_query_cache允许 查询缓存 , 个别查询仍然 需要被 设置为 可缓存的. 取值 true|false属性名用途hibernate.cache.
13、use_second_level_cache能用来完 全禁止 使用 二级缓存 . 对那些在类的 映射定义中指定 的类, 会默认 开启 二级缓存 . 取值 true|falsehibernate.cache.query_cache_factory自定 义实现 querycache接口的类名 , 默认为 内建的 standardquerycache. 取值 classname.of.querycachehibernate.cache.region_prefix二级缓存区域 名的 前缀 . 取值 prefixhibernate.cache.use_structured_entries强制 hiber
14、nate以更人性化的 格式将数据 存入二级缓存 . 取值 true|false表 3.6. hibernate 事务 属性属性名用途hibernate.transaction.factory_class一个 transactionfactory的类名 , 用于hibernate transaction api ( 默认为jdbctransactionfactory). 取值 classname.of.transactionfactoryjta.usertransaction一个 jndi 名字, 被 jtatransactionfactory用来从应 用服务器获 取jtausertransac
15、tion. 取值 jndi/composite/namehibernate.transaction.manager_lookup_class一个 transactionmanagerlookup的类名- 当使用 jvm 级缓存 ,或在 jta 环境 中使用 hilo生成 器的时候需要 该类. 取值 classname.of.transactionmanagerlookuphibernate.transaction.flush_before_completion如果开启 , session 在事务 完成后将 被自动 清洗(flush) 。 现在更 好的方法 是使用自动session上下文 管理。
16、请参 见第 2.5 节 “上下文相 关的(contextual)session ”。取值 true | falsehibernate.transaction.auto_close_session如果开启 , session 在事务 完成后将 被自动关闭。现在更 好的方法 是使用自动session 上下文 管理。请参 见第 2.5 节 “上下文相 关的(contextual)session ”。属性名用途取值 true | false表 3.7. 其他 属性属性名用途hibernate.current_session_context_class为当前 session指定一个 (自定 义的)策略
17、。关于 内置策略 的详情,请参见第 2.5 节 “上下文相 关的( contextual)session ” 。eg. jta | thread | managed | custom.classhibernate.query.factory_class选择 hql 解析器的实现 . 取值 org.hibernate.hql.ast.astquerytranslatorfactory or org.hibernate.hql.classic.classicquerytranslatorfactoryhibernate.query.substitutions将 hibernate查询 中的符号 映
18、射 到 sql 查询 中的 符号 (符号 可能 是函数名或常量 名字 ). 取值 hqlliteral=sql_literal, hqlfunction=sqlfunchibernate.hbm2ddl.auto在 sessionfactory创建 时, 自动 检查数据库 结构, 或者将数据库 schema的 ddl 导出到数据库 . 使用 create-drop时,在显式关闭sessionfactory时,将 drop掉数据库 schema. 取值 validate | update | create | create-drophibernate.cglib.use_reflection_o
19、ptimizer开启 cglib 来替代运行时 反射机制(系统级属性 ). 反射机制有 时在除错时比较 有用 . 注意即使关闭这个优化, hibernate还是需要 cglib. 你不能 在hibernate.cfg.xml中设置 此属性 . 取值 true | false3.4.1. sql 方言你应 当总是为 你的数据库将hibernate.dialect属性设置成 正确 的 org.hibernate.dialect.dialect子类. 如果你指 定一 种方 言, hibernate 将为上 面列 出的一 些属性使用 合理的默认值 , 为你省去了 手工指定它们 的功夫 . 表 3.8.
20、 hibernate sql 方言 ( hibernate.dialect) rdbms 方言db2 org.hibernate.dialect.db2dialectdb2 as/400 org.hibernate.dialect.db2400dialectdb2 os390 org.hibernate.dialect.db2390dialectpostgresql org.hibernate.dialect.postgresqldialectmysql org.hibernate.dialect.mysqldialectmysql with innodb org.hibernate.dialect.mysqlinnodbdialectrdbms 方言mysql with myisam org.hibernate.dialect.mysqlmyisamdialectoracle (any version) org.hibernate.dialec
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 肾衰竭患者的全方位护理策略
- 家庭口腔健康保健
- 乐清设计案例分享
- 猝死的鉴别诊断
- 2025年新与租车公司的赔偿协议书
- 2025年新榆林医院签署赔偿协议书
- 2025年新幼儿园侵权赔偿协议书
- 2025年新幼儿烫伤赔偿协议书
- 保育员培训内容大纲
- 2025年新油污染稻田赔偿协议书
- 海南托老院2024年招考工作人员(高频重点提升专题训练)共500题附带答案详解
- TB 10012-2019 铁路工程地质勘察规范
- 光伏支架培训课件
- 2022版义务教育(道德与法治)课程标准(附课标解读)
- 湖南省长沙市田家炳实验中学实验高一物理摸底试卷含解析
- 医院预算专项审计方案
- 汽车安全维护和检查
- 2023拖车运输合同
- 医务人员服务态度差存在问题及整改措施
- 公司总经理年终工作总结
- 退役军人服务中心(站)场所建设和设施配备指南
评论
0/150
提交评论