oracle数据源的配置和通过数据源方式连接数据库

1.配置数据源

1.1 Tomcat环境

Tomcat环境中配置数据源后需要的jar包包括:

commons-dbcp- 1.2.1 .jar

commons-pool-1.2.jar

commons-collections- 2.1.1 .jar

<Tomcat根目录>/conf/server.xml文件中的</host>标记前添加一个Context标记,如下:

<Context path="/exam" docBase="e:/project/Exam/Exam.war"

         debug="0" reloadable="true">

          <Resource name="jdbc/examDB"

                                   auth="Container"

                                type="javax.sql.DataSource"

                                factory="org.apache.commons.dbcp.BasicDataSourceFactory"

                                driverClassName="oracle.jdbc.driver.OracleDriver"

                                url="jdbc:oracle:thin:@localhost:1521:test"

                                username="self"

                                password="self"

                                maxActive="20"

                                maxIdle="10"

                                maxWait="-1"/>

                            </Context>

 

1.2   JBoss

<JBoss根目录>/docs/examples/jca/oracle-ds.xml文件拷贝到deploy目录下,并进行相应的修改:

<datasources>标记中增加一个<local-tx-datasource>标记,如下:

  <local-tx-datasource>

    <jndi-name>jdbc/examDB</jndi-name>

    <connection-url>jdbc:oracle:thin:@localhost:1521:test</connection-url>

    <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>

    <user-name>self</user-name>

    <password>self</password>

    <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name>

      <metadata>

         <type-mapping>Oracle9i</type-mapping>

      </metadata>

  </local-tx-datasource>

 

1.3   Weblogic

登陆weblogic控制台,添加数据源。

 

2. 通过数据源方式连接数据库

在配置完成数据源后便可以在程序中通过数据源进行数据库访问了,代码如下:

DataSource ds = (DataSource) lookup(“jdbc/examDB”);

Connection conn = ds.getConnection();

 

/*

*下面函数分别按照TomcatJBossWeblogic的顺序进行查找数据源,注意其中的区别

*/

private Object lookup(String location) throws NamingException {

           InitialContext context = new InitialContext();

        try {//Tomcat容器

            Context envContext = (Context) context.lookup("java:/comp/env");//tomcat

                     DataSource ds = (DataSource) envContext.lookup(location);

                     return ds;

        } catch (NamingException e) {

               try {//JBoss容器

                            return context.lookup("java:/" + location);//jboss               

            } catch (NamingException ee) {

                   try{//weblogic容器

                          return context.lookup(location);//weblogic

                   }

                   catch(NamingException eee){

                   }

            }

            throw e;

        }

}

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值