




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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按照被更新数据的主键, 为 sql 更新排序
4、。这么做将减少在高并发系统中事务的死锁。取值 true | falsehibernate.generate_statistics如果开启 , hibernate将收集有助于性能调节的统计数据. 取值 true | falsehibernate.use_identifer_rollback如果开启 , 在对象被删除时生成的标识属性将被重设为默认值 . 取值 true | false属性名用途hibernate.use_sql_comments如果开启 , hibernate将在 sql 中生成有助于调试的注释信息 , 默认值为 false. 取值 true | false表 3.4. hiber
5、nate jdbc和连接 (connection) 属性属性名用途hibernate.jdbc.fetch_size非零值,指定jdbc 抓取数量的大小(调用statement.setfetchsize(). hibernate.jdbc.batch_size非零值,允许hibernate使用 jdbc2 的批量更新 . 取值 建议取 5 到 30 之间的值hibernate.jdbc.batch_versioned_data如果你想让你的jdbc 驱动从 executebatch()返回正确的行计数, 那么将此属性设为true(开启这个选项通常是安全的). 同时,hibernate将为自动版
6、本化的数据使用批量dml. 默认值为 false. eg. true | falsehibernate.jdbc.factory_class选择一个自定义的batcher. 多数应用程序不需要这个配置属性 . eg. classname.of.batcherhibernate.jdbc.use_scrollable_resultset允许 hibernate使用 jdbc2 的可滚动结果集 . 只有在使用用户提供的jdbc 连接时,这个选项才是必要的, 否则 hibernate会使用连接的元数据. 取值 true | falsehibernate.jdbc.use_streams_for_bi
7、nary在 jdbc 读写 binary (二进制 ) 或 serializable ( 可序列化 ) 的类型时使用流(stream)( 系统级属性 ). 取值 true | falsehibernate.jdbc.use_get_generated_keys在数据插入数据库之后,允许使用jdbc3 preparedstatement.getgeneratedkeys()来获取数据库生成的key( 键)。需要 jdbc3+ 驱动和 jre1.4+, 如果你的数据库驱动在使用hibernate的标 识生成器时遇到问题,请将此值设为false. 默认情况下将使用连接的元数据来判定驱动的能力. 取值
8、 true|vider_class自定义 connectionprovider的类名 , 此类用来向hibernate提供 jdbc 连接 . 取值 classname.of.connectionproviderhibernate.connection.isolation设置 jdbc 事务隔离级别 . 查看java.sql.connection来了解各个值的具体意义, 但请注意多数数据库都不支持所有的隔离级别. 属性名用途取值 1, 2, 4, 8hibernate.connection.autocommit允许被缓存的jdbc 连接
9、开启自动提交(autocommit) (不建议 ). 取值 true | falsehibernate.connection.release_mode指定 hibernate在何时释放jdbc 连接 . 默认情况下 ,直到 session 被显式关闭或被断开连接时,才会释放jdbc 连接 . 对于应用程序服务器的jta 数据源 , 你应当使用 after_statement, 这样在每次jdbc 调用后,都会主动的释放连接. 对于非 jta 的连接 , 使用after_transaction在每个事务结束时释放连接是合理的 . auto将为 jta 和 cmt 事务策略选择after_stat
10、ement, 为 jdbc 事务策略选择after_transaction. 取值 auto (默认 ) | on_close | after_transaction | after_statement注意 ,这些设置仅对通过sessionfactory.opensession得到的 session起作用。对于通过sessionfactory.getcurrentsession得到的session,所配置的currentsessioncontext实现控制这些session的连接释放模式。请参阅第 2.5 节 “上下文相关的(contextual)session ”。hibernate.con
11、nection.将 jdbc 属性 propertyname传递到drivermanager.getconnection()中去 . hibernate.jndi.将属性 propertyname传递到jndi initialcontextfactory中去 . 表 3.5. hibernate 缓存属性属性名用途vider_class自定义的 cacheprovider的类名 . 取值 classname.of.cacheproviderhibernate.cache.use_minimal_puts以频繁的读操作为代价, 优化二级缓存来最小化写操作 .
12、 在 hibernate3中,这个设置对的集群缓存非常有用 , 对集群缓存的实现而言,默认是开启的 . 取值 true|falsehibernate.cache.use_query_cache允许查询缓存 , 个别查询仍然需要被设置为可缓存的. 取值 true|false属性名用途hibernate.cache.use_second_level_cache能用来完全禁止使用二级缓存. 对那些在类的映射定义中指定 的类,会默认开启二级缓存. 取值 true|falsehibernate.cache.query_cache_factory自定义实现querycache接口的类名 , 默认为内建的
13、standardquerycache. 取值 classname.of.querycachehibernate.cache.region_prefix二级缓存区域名的前缀. 取值 prefixhibernate.cache.use_structured_entries强制 hibernate以更人性化的格式将数据存入二级缓存 . 取值 true|false表 3.6. hibernate 事务属性属性名用途hibernate.transaction.factory_class一个 transactionfactory的类名 , 用于hibernate transaction api ( 默认为
14、jdbctransactionfactory). 取值 classname.of.transactionfactoryjta.usertransaction一个 jndi 名字,被 jtatransactionfactory用来从应用服务器获取jtausertransaction. 取值 jndi/composite/namehibernate.transaction.manager_lookup_class一个 transactionmanagerlookup的类名- 当使用 jvm 级缓存,或在jta 环境中使用hilo生成器的时候需要该类. 取值 classname.of.transac
15、tionmanagerlookuphibernate.transaction.flush_before_completion如果开启 , session 在事务完成后将被自动清洗(flush) 。 现在更好的方法是使用自动session上下文管理。请参见第 2.5 节 “上下文相关的(contextual)session ”。取值 true | falsehibernate.transaction.auto_close_session如果开启 , session 在事务完成后将被自动关闭。现在更好的方法是使用自动session上下文管理。请参见第 2.5 节 “上下文相关的(contextua
16、l)session ”。属性名用途取值 true | false表 3.7. 其他属性属性名用途hibernate.current_session_context_class为当前 session指定一个 (自定义的 )策略。关于内置策略的详情,请参见第 2.5 节 “上下文相关的(contextual)session ” 。eg. jta | thread | managed | custom.classhibernate.query.factory_class选择 hql 解析器的实现 . 取值 org.hibernate.hql.ast.astquerytranslatorfactory
17、 or org.hibernate.hql.classic.classicquerytranslatorfactoryhibernate.query.substitutions将 hibernate查询中的符号映射到sql 查询中的符号(符号可能是函数名或常量名字 ). 取值 hqlliteral=sql_literal, hqlfunction=sqlfunchibernate.hbm2ddl.auto在 sessionfactory创建时,自动检查数据库结构, 或者将数据库schema的 ddl 导出到数据库 . 使用 create-drop时,在显式关闭sessionfactory时,将
18、 drop掉数据库 schema. 取值 validate | update | create | create-drophibernate.cglib.use_reflection_optimizer开启 cglib 来替代运行时反射机制(系统级属性 ). 反射机制有时在除错时比较有用 . 注意即使关闭这个优化, hibernate还是需要 cglib. 你不能在hibernate.cfg.xml中设置此属性 . 取值 true | false3.4.1. sql 方言你应当总是为你的数据库将hibernate.dialect属性设置成正确的org.hibernate.dialect.dia
19、lect子类 . 如果你指定一种方言, hibernate将为上面列出的一些属性使用合理的默认值, 为你省去了手工指定它们的功夫. 表 3.8. 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.dialect.oracledialectoracle 9
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 网页设计与开发(HTML5+CSS3)-课程标准
- 2025年中国卷式耳塞行业市场全景分析及前景机遇研判报告
- 2025年中国金属夹行业市场全景分析及前景机遇研判报告
- 2025年中国健康和运动跟踪器行业市场全景分析及前景机遇研判报告
- 2025年中国监控镜头行业市场全景分析及前景机遇研判报告
- 笔记本对笔套装行业深度研究分析报告(2024-2030版)
- 普外围手术期管理
- 毒性饮片培训课件
- 沉香化气片培训课件
- 2025年中国齿轮箱行业市场深度分析及投资潜力预测报告
- 世界文明史学习通超星期末考试答案章节答案2024年
- 英语国家概况(修订版)Chapter-18
- 2023-2024学年四川省南充市高一下学期7月期末物理试题(解析版)
- 2024年全国财会知识竞赛考试题库(浓缩500题)
- 中学体育七年级《篮球基本技巧》说课课件
- 实战-数字化转型工作手册 两份资料
- 2024年青海省中考生物地理合卷试题(含答案解析)
- 2023-2024学年译林版八年级英语下册期末易错120题(江苏专用)(含答案解析)
- G -B- 17378.7-2007 海洋监测规范 第7部分 近海污染生态调查和生物监测(正式版)
- (高清版)JTST 325-2024 水下深层水泥搅拌桩法施工质量控制与检验标准
- 茂名高州市村(社区)后备干部招聘笔试真题2023
评论
0/150
提交评论