关于hibernate配置文件的一些备忘

Hibernate的配置文件里面有很多的参数可以设置,下面将自己的配置写出来:

  1. <prop key="hibernate.dialect">org.hibernate.dialect.MySQLMyISAMDialectprop>    

这个不用多解释了,泛指用到的数据库的方言,这里用到的是Mysql

xml 代码
  1. <prop key="hibernate.connection.provider">org.hibernate.connection.DatasourceConnectionProviderprop>  
  2. <prop key="hibernate.connection.datasource">java:comp/env/jdbc/MyDBprop>  

 

xml 代码
  1. <prop key="hibernate.connection.driver_class">com.mysql.jdbc.Driverprop>  
  2. <prop key="hibernate.connection.url">jdbc:mysql://localhost:3306/mydbprop>  
  3. <prop key="hibernate.connection.username">realprop>  
  4. <prop key="hibernate.connection.password">realprop>  
  5. <prop key="hibernate.connection.provider">org.hibernate.connection.C3P0ConnectionProviderprop>  
  6. <prop key="hibernate.c3p0.acquire_increment">1prop>    
  7. <prop key="hibernate.c3p0.idle_test_period">100prop>    
  8. <prop key="hibernate.c3p0.max_size">150prop>    
  9. <prop key="hibernate.c3p0.max_statements">0prop>    
  10. <prop key="hibernate.c3p0.min_size">1prop>    
  11. <prop key="hibernate.c3p0.timeout">600prop>  

 上面是指hibernate用到的数据连接池,hibernate提供三种方法,代码中使用了App Server的连接池,这种方法也是当开发Web应用的时候推荐的方法。除此之外,还可以用hibernate提供的第三方的连接池C3P0

xml 代码
  1. <prop key="hibernate.jdbc.fetch_size">50prop>  
  2. <prop key="hibernate.jdbc.batch_size">25prop>  

上面的fetch_size是指数据库每次从表中读取的数据的条数,不同的数据库是不一样的,也就是说,如果你取10000条数据,hibernate会50条50条的取进行验证,这样会提升性能,但遗憾的是mysql不提供这样的功能,他会一次取出10000条到内存,内存的开销会非常大。Batch Size是设定对数据库进行批量删除,批量更新和批量插入的时候的批次大小,oracle设置30比较合适。

 

你可能感兴趣的:(oracle,mysql,Hibernate,xml,jdbc)