1002--hibernate.cfg.xml的常用属性

•C3P0 数据库连接池属性
hibernate.c3p0.max_size: 数据库连接池的最大连接数
hibernate.c3p0.min_size: 数据库连接池的最小连接数
hibernate.c3p0.timeout:   数据库连接池中连接对象在多长时间没有使用过后,就应该被销毁
hibernate.c3p0.max_statements:  缓存 Statement 对象的数量
hibernate.c3p0.idle_test_period:  表示连接池 检测线程 多长时间检测一次池内的所有链接对象是否超时 .
     连接池本身不会把自己从连接池中移除,而是专门有一个线程按照一定的时间间隔来做这件事,
     这个线程通过比较连接对象最后一次被使用时间和当前时间的时间差来和 timeout 做对比,
     进而决定是否销毁这个连接对象。
hibernate.c3p0.acquire_increment: 当数据库连接池中的连接耗尽时 , 同一时刻获取多少个数据库连接
 
其他
show_sql :是否将运行期生成的 SQL 输出到日志以供调试。取值 true | false
format_sql :是否将 SQL 转化为格式良好的 SQL . 取值 true | false
hbm2ddl.auto :在启动和停止时自动地创建,更新或删除数据库模式。取值 create | update | create-drop | validate
hibernate.jdbc.fetch_size
hibernate.jdbc.batch_size
 
hibernate.jdbc.fetch_size
  实质是调用 Statement.setFetchSize () 方法 设定 JDBC Statement 读取数据的时候每次从数据库中取出的记录条数
 – 例如一次查询 1 万条记录,对于 Oracle JDBC 驱动来说,是不会 1 次性把 1 万条取出来的,而只会取出 fetchSize 条数,
    当结果集遍历完了这些记录以后,再去数据库取 fetchSize 条数据。因此大大节省了无谓的内存消耗。
    Fetch Size 设的越大,读数据库的次数越少,速度越快; Fetch Size 越小,读数据库的次数越多,速度越慢。
     Oracle 数据库的 JDBC 驱动默认的 Fetch Size = 10 ,是一个保守的设定,根据测试,当 FetchSize=50 时,
    性能会提升 1 倍之多,当 f etchSize =100 ,性能还能继续提升 20% Fetch Size 继续增大,性能提升的就不显著了。
    并不是所有的数据库都支持 Fetch Size 特性,例如 MySQL 就不支持
hibernate.jdbc.batch_size
    设定对数据库进行批量删除,批量更新和批量插入的时候的批次大小
     类似于设置缓冲区大小的意思。 batchSize 越大,批量操作时向数据库发送 sql 的次数越少,速度就越快。
     – 测试结果是当 BatchSize=0 的时候,使用 Hibernate Oracle 数据库删除 1 万条记录需要 25 秒,
      Batch Size = 50 的时候,删除仅仅需要 5 秒! Oracle 数据库 b atchSize =30 的时候比较合适。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值