Spring框架中获得DataSource对象的方法

转载 2015年07月08日 15:21:19

转载自http://www.oschina.net/code/snippet_117958_4699

在Spring框架中有如下3种获得DataSource对象的方法: 
1.从JNDI获得DataSource. 
2.从第三方的连接池获得DataSource. 
3.使用DriverManagerDataSource获得DataSource.

1. [代码]JNDI方式     

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
1、SpringJNDI数据源配置信息:
  <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
   <property name="jndiName">
    <value>java:comp/env/jcptDataSourceJNDI</value>
   </property>
  </bean>
  jcptDataSourceJNDI是tomcat或者其他应用服务器配置的JNDI.
 
2、关于JNDI的配置(tomcat):
  修改tomcat目录conf/context.xml文件:
  <Resource name="jcptDataSourceJNDI" auth="Container" type="javax.sql.DataSource"
      maxActive="100" maxIdle="30" maxWait="10"   username="tysp"
      password="12345678" driverClassName="oracle.jdbc.driver.OracleDriver"
      url="jdbc:oracle:thin:@192.168.1.35:1521:orcl"/> 
 
3、通过JNDI获取DataSource:
  Context context = new InitialContext();
  DataSource ds = (DataSource)context.lookup("java:comp/env/jcptDataSourceJNDI");

2. [代码]使用DBCP连接池获取     

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
要在Spring中使用DBCP连接池,需要引入commons-collections.jar、commons-dbcp.jar和commons-pool.jar。
 
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
        <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>
        <property name="url" value="jdbc:oracle:thin:@192.168.1.35:1521:orcl"></property>
        <property name="username" value="or_meal"></property>
        <property name="password" value="or_meal"></property>
        <property name="maxActive" value="100"></property>
        <property name="maxIdle" value="30"></property>
        <property name="maxWait" value="10"></property>
        <property name="defaultAutoCommit" value="false"></property>
    </bean>
 
    <bean id="sessionFactory"
        class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
        <property name="dataSource">
            <ref bean="dataSource" />
        </property>
 
        <property name="hibernateProperties">
            <props>
                <prop key="hibernate.dialect">org.hibernate.dialect.Oracle9Dialect
                </prop>
                <prop key="show_sql">true</prop>
                <prop key="format_sql">true</prop>
            </props>
        </property>
        <property name="mappingResources">
        <list></list>
        </property>
    </bean>

3. [代码]使用DriverManagerDataSource     

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<bean id="dataSource"
        class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName">
            <value>oracle.jdbc.driver.OracleDriver
            </value>
        </property>
        <property name="url">
            <value>jdbc:oracle:thin:@192.168.1.35:orcl
            </value>
        </property>
        <property name="username">
            <value>or_meal</value>
        </property>
        <property name="password">
            <value>or_meal</value>
        </property>
    </bean>

Spring框架中获得DataSource对象的方法

Spring框架中获得DataSource对象的方法 1,使用org.springframework.jdbc.datasource.DriverManagerDataSource  ...
  • pingguonjb
  • pingguonjb
  • 2013年09月21日 21:42
  • 553

Spring框架中获得DataSource对象的方法(转)

在Spring框架中有如下3种获得DataSource对象的方法: 一、从JNDI获得DataSource 1.在tomcat服务器中的配置示例,在tomcat目录conf/context.xm...
  • fyy90903
  • fyy90903
  • 2015年07月17日 15:53
  • 207

Spring框架中获取dataSource对象的方法

在Spring框架中有如下3种获得DataSource对象的方法: 1.从JNDI获得DataSource. 2.从第三方的连接池获得DataSource. 3.使用DriverManag...
  • x286129277
  • x286129277
  • 2013年04月10日 14:45
  • 555

JDBC与JNDI获取数据库连接对象注意事项

首先给大家分别看看,用JDBC和JNDI创建
  • veid_f3
  • veid_f3
  • 2014年10月10日 20:38
  • 1106

从jdbc中获取连接对象Connection的三种方法

使用DriverManager类获取数据库连接对象 配置容器数据源 依赖注入框架
  • u013905744
  • u013905744
  • 2017年07月11日 17:34
  • 1533

ServletConfig对象的方法

配置初始化参数在web.xml中servlet的注册信息中配置参数 helloServlet com.obguy.javaweb.HelloServlet u...
  • obguy
  • obguy
  • 2016年07月21日 16:46
  • 847

反射:动态执行一个对象的方法

public Object invoke(Object obj, String methodName, Object... args) throws Exception { Class cls = ...
  • cmalaya
  • cmalaya
  • 2014年09月21日 01:39
  • 873

DataSource与DriverManager的比较

DriverManager DataSource 无需硬性编码驱动 对连接池的支持
  • u013905744
  • u013905744
  • 2016年10月25日 10:35
  • 687

ResultSet对象--next()方法

ResultSet是您访问数据库返回的数据表,也就是结果集合,一开始是处于第一行之前,即beforeFirst,第一次使用next()就将指针指向返回结果集的第一行。每使用一次next(),指针就指向...
  • a327736051
  • a327736051
  • 2015年09月27日 12:19
  • 1275

《Spring》------对象的创建机制剖析

前言 利用Spring框架,我们很方便的将对象管理起来,比如说:“从对象的创建(Ioc),到对象的使用(DI)”。那么在对象是以何种方式创建的,以及其创建的时间,还有创建对象是单例的还是多例是怎么控制...
  • u013067402
  • u013067402
  • 2016年11月13日 19:49
  • 1012
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Spring框架中获得DataSource对象的方法
举报原因:
原因补充:

(最多只允许输入30个字)