Spring学习总结3——配置datasource三种方式
博客专区 > yope 的博客 > 博客详情
Spring学习总结3——配置datasource三种方式
yope 发表于3年前
Spring学习总结3——配置datasource三种方式
  • 发表于 3年前
  • 阅读 80
  • 收藏 1
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

摘要: Spring学习总结 配置datasource三种方式 DriverManagerDataSource,BasicDataSource,JndiObjectFactoryBean

jdbc.properties文件信息

##Oracle 11g
jdbc.driverClassName=oracle.jdbc.OracleDriver
jdbc.url=jdbc:oracle:thin:@localhost:1521:orclnyp
jdbc.username=scott
jdbc.password=tiger

使用spring提供的PropertyPlaceholderConfigurer读取数据库配置信息.properties

<bean id="propertyConfigurer"
      class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
    <property name="location" value="classpath:jdbc.properties"/>
</bean>

1、使用org.springframework.jdbc.datasource.DriverManagerDataSource 

说明:DriverManagerDataSource建立连接是只要有连接就新建一个connection,根本没有连接池的作用。

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> 
              <property name="driverClassName"><value>${jdbc.driverClassName}</value></property> 
              <property name="url"><value>${jdbc.url}</value></property> 
              <property name="username"><value>${jdbc.username}</value></property> 
              <property name="password"><value>${jdbc.password}</value></property> 
</bean>

2、使用org.apache.commons.dbcp.BasicDataSource 

说明:这是一种推荐说明的数据源配置方式,它真正使用了连接池技术 

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> 
              <property name="driverClassName"><value>${jdbc.driverClassName}</value></property> 
              <property name="url"><value>${jdbc.url}</value></property> 
              <property name="username"><value>${jdbc.username}</value></property> 
              <property name="password"><value>${jdbc.password}</value></property> 
              <property name="maxActive"> 
                     <value>255</value> 
              </property> 
              <property name="maxIdle"> 
                     <value>2</value> 
              </property> 
              <property name="maxWait"> 
                     <value>120000</value> 
              </property> 
 </bean>

3、使用org.springframework.jndi.JndiObjectFactoryBean 

说明:JndiObjectFactoryBean 能够通过JNDI获取DataSource 

<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> 
              <property name="jndiName"><value>java:comp/env/jdbc/roseindiaDB_local</value></property> 
</bean>

总结:3种方式中的第一种没有使用连接池,故少在项目中用到,第三种方式需要在web server中配置数据源,不方便于部署,推荐使用每二种方式进行数据源的配置。 




共有 人打赏支持
粉丝 15
博文 35
码字总数 32773
×
yope
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: