Spring中配置DataSource数据源的3种选择

Spring中配置DataSource数据源的几种选择

在Spring框架中有如下3种获得DataSource对象的方法:

  1. 从JNDI获得DataSource.
  2. 从第三方的连接池获得DataSource.
  3. 使用DriverManagerDataSource获得DataSource.

一、从JNDI获得DataSource

SpringJNDI数据源配置信息:

          java:comp/env/jcptDataSourceJNDI      

jcptDataSourceJNDI是tomcat或者其他应用服务器配置的JNDI.

关于JNDI的配置(tomcat):

修改tomcat目录conf/context.xml文件或server.xml文件:


在server.xml中加入元素:元素用来定义JNDI Resource。

属性:描述

name:指定Resource的JNDI名字

auth:指定管理Resource的Manager,它有两个可选值:Container、Application

type:指定Resource所属的Java类名

元素中加入元素:元素用来指定各种参数值(也可以像上面那样配置)

属性:描述

factory 指定生成的DataResource的factory类名

maxActive 指定数据库连接池中处于活动状态的最大连接数目,0表示不受限制

maxIdle 指定数据库连接池中处于空闲状态的最大连接数目,0表示不受限制

maxWait 指定连接池中连接处于空闲状态的最长时间,超过会抛出异常,-1表示无限

username 指定连接数据库的用户名

password 指定连接数据库的口令

driverClassName 指定连接数据库的JDBC驱动程序

url 指定连接数据库的URL

3、通过JNDI获取DataSource:

Context context = new InitialContext();

DataSource ds = (DataSource)context.lookup("java:comp/env/jcptDataSourceJNDI");

4.在web.xml中加入(spring配置中可以不用)

    DB Connection    jdbc/TestDB    javax.sql.DataSource    Container   

你可能感兴趣的:(Spring中配置DataSource数据源的3种选择)