posts - 156,  comments - 601,  trackbacks - 0
  参读了Hibernate的源代码后,整理了一下Hibernate配置文件中几种实现数据库连接方式的配置方法。(共四个方式)
   1. 程序内部启动 c3p0 连接池。
   配置方式如下:连接池的支持(注:需要c3p0的类库支持)
        <property name="hibernate.connection.driver_class" value="org.postgresql.Driver" />
       
<property name="hibernate.connection.url" value="jdbc:postgresql://xxxxx/xxxx" />
       
<property name="hibernate.connection.username" value="xxxxx" />
       
<property name="hibernate.connection.password" value="xxxx" />
        
<property name="hibernate.c3p0.min_size"
                    value
="5"/>
        
<property name="hibernate.c3p0.max_size"
                    value
="20"/>
        
<property name="hibernate.c3p0.timeout"
                    value
="300"/>
        
<property name="hibernate.c3p0.max_statements"
                    value
="50"/>
        
<property name="hibernate.c3p0.idle_test_period"
                    value
="3000"/>   
   注: Hibernate根据 hibernate.c3p0.max_size 这个配置来识别是支持c3p0连接池

   2. 引用外部连接池    (通过JNDI查找 DataSource资料)
   需要配置方式如下:
      <property name="hibernate.connection.datasource" value="java:comp/env/jdbc/qualitydb"/>

   3. 通过 org.hibernate.connection.ProxoolConnectionProvider 创建
    由
       hibernate.proxool.xml
       hibernate.proxool.properties
       hibernate.proxool.existing_pool 三个配置一起来确定

   4.  DriverManager 创建直接连接方式
       <property name="hibernate.connection.driver_class" value="org.postgresql.Driver" />
      
<property name="hibernate.connection.url" value="jdbc:postgresql://xxxxx/xxxx" />
      
<property name="hibernate.connection.username" value="xxxxx" />
      
<property name="hibernate.connection.password" value="xxxx" />
    注: Hibernate根据 hibernate.connection.url这个来识别,由于在识别时,c3p0的优先级会高于DriverManger所以,与c3p0的配置不会冲突


Good Luck!
Yours Matthew!
posted on 2008-10-19 21:19 x.matthew 阅读(3281) 评论(0)  编辑  收藏 所属分类: Spring|Hibernate|Other framework

只有注册用户登录后才能发表评论。


网站导航: