配置JDBC的链接:
java
<!--配置数据库的驱动程序,Hibernate在链接数据库时,须要用到数据库的驱动程序--> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <!--设置数据库的链接url:jdbc:mysql://localhost/hibernate,其中localhost表示mysql服务器名称,此处为本机, hibernate是数据库名--> <property name="hibernate.connection.url">jdbc:mysql://localhost/hibernate</hibernate> <!--链接数据库是用户名--> <property name="hibernate.connection.username">root</property> <!--链接数据库是密码--> <property name="hibernate.connection.password">123456</property> <!--数据库链接池的大小--> <property name="hibernate.connection.pool.size">20</property>
2.配置c3p0链接池:mysql
<!--用c3p0链接池链接所容许的最大链接数--> <property name="hibernate.c3p0.max_size">20</property> <!-- c3p0所容许的最少链接数 --> <property name="hibernate.c3p0.min_size">1</property> <!-- 指定链接池链接失效的时间 --> <property name="hibernate.c3p0.timeout">50</property> <!-- 指定链接池缓存最大的存储多少个statement --> <property name="hibernate.c3p0.max_statements">100</property> <!-- hibernate.c3p0.timeout表示链接对象多长时间应该被销毁, 注意,是”应该“,可是谁来销毁它呢,须要一个线程按照hibernate.c3p0.idle_test_period 设定的时间间隔去自动校验这些连接对象并销毁timeout的 --> <property name="hibernate.c3p0.idle_test_period">30</property> <!-- 当链接池里面的链接用完的时候,C3P0一下获取的新的链接数 --> <property name="hibernate.c3p0.acquire_increment">2</property>
3.其余配置:
sql
<!-- 链接数据库的数据库方言 --> <property name="dialect">org.hibernate.dialect.MySQLInnoDBDialect</property> <!--是否在后台显示Hibernate用到的SQL语句,开发时设置为true,便于差错,程序运行时能够在Eclipse的控制台显示H ibernate的执行Sql语句。项目部署后能够设置为false,提升运行效率--> <property name="hibernate.show_sql">true</property> <!--jdbc.fetch_size是指Hibernate每次从数据库中取出并放到JDBC的Statement中的记录条数。Fetch Size设的越大,读数据库的次数越少,速度越快,Fetch Size越小,读数据库的次数越多,速度越慢--> <property name="jdbc.fetch_size">50</property> <!--jdbc.batch_size是指Hibernate批量插入,删除和更新时每次操做的记录数。Batch Size越大,批量操做的向数据库发送Sql的次数越少,速度就越快,一样耗用内存就越大--> <property name="jdbc.batch_size">23</property> <!--connection.characterEncoding链接数据库时数据的传输字符集编码方式,最好设置为gbk,用gb2312有的字符不全--> <property name="connection.characterEncoding">gbk</property>
4.二级缓存配置属性:数据库
属性名 | 用途 |
hibernate.cache.provider_class | 指定CacheProvider的类名 |
hibernate.cache.use_minnimal_puts | 以更频繁的读操做做为代价,将写操做减到最少从而达到优化二级缓存的目的,对集群缓存更有效 |
hibernate.cache.use_query_cache | 设置是否启用查询缓存,个别查询须要设置该属性 |
hibernate.cache.use_second_level_cache | 能够使用这个属性彻底禁用二级缓存 |
hibernate.cache.query_cache_factory | 指定QueryCache接口的实现类类名 |