zoukankan      html  css  js  c++  java
  • Tomcat,Jboss,Weblogic通过jndi连接数据库

    1. 1.  Tomcat配置Jndi数据源

    1.1在tomcat服务器的lib目录下加入数据库连接的驱动jar包

    1.2修改tomcat服务器的conf目录下server.xml配置文件

    编辑server.xml文件,添加全局JNDI数据源配置,配置如下:

    <GlobalNamingResources>

        <Resource name="UserDatabase" auth="Container"

                  type="org.apache.catalina.UserDatabase"

                  description="User database that can be updated and saved"

                  factory="org.apache.catalina.users.MemoryUserDatabaseFactory"

                  pathname="conf/tomcat-users.xml" />

        <!--

           |- name:表示以后要查找的名称。通过此名称可以找到DataSource,此名称任意更换,但是程序中最终要查找的就是此名称,

                为了不与其他的名称混淆,所以使用jdbc/oracle,现在配置的是一个jdbc的关于oracle的命名服务。

           |- auth:由容器进行授权及管理,指的用户名和密码是否可以在容器上生效

           |- type:此名称所代表的类型,现在为javax.sql.DataSource

           |- maxActive:表示一个数据库在此服务器上所能打开的最大连接数

           |- maxIdle:表示一个数据库在此服务器上维持的最小连接数

           |- maxWait:最大等待时间。10000毫秒

           |- username:数据库连接的用户名

           |- password:数据库连接的密码

           |- driverClassName:数据库连接的驱动程序

           |- url:数据库连接的地址

        -->

     <!--配置MySQL数据库的JNDI数据源-->

     <Resource

             name="jdbc/mysql"

             auth="Container[t1] "

             type="javax.sql.DataSource"

             maxActive="100"

             maxIdle="30"

             maxWait="10000"

             username="root"

             password="tingyun2o13"

             driverClassName="com.mysql.jdbc.Driver"

             url="jdbc:mysql://192.168.2.129:3306/javatest"/>

      </GlobalNamingResources>

    1.3在tomcat的conf目录下打开context.xml配置文件.(不存在就创建^_^)

      1.3.1配置连接池

       <?xml version="1.0" encoding="UTF-8"?>

    <!-- The contents of this file will be loaded for each web application -->

    <Context>

        <!-- Default set of monitored resources. If one of these changes, the    -->

        <!-- web application will be reloaded.                                   -->

        <WatchedResource>WEB-INF/web.xml</WatchedResource>

        <WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>

         <!--配置一个连接池-->

         <ResourceLink global="jdbc/mysql" name="jdbc/mysql" type="javax.sql.DataSource" />  [t2] 

         <!--

        <ResourceLink global="jdbc/mysql" name="jdbc/mysql" type="javax.sql.DataSource" /> 

        <WatchedResource>WEB-INF/web.xml</WatchedResource> 

         -->

        <!-- Uncomment this to disable session persistence across Tomcat restarts -->

        <!--

        <Manager pathname="" />

        -->

    </Context>

    1.4重新启动tomcat,通过jndi访问应用

    参考博客:

       http://blog.csdn.net/samjustin1/article/details/52265803

       http://www.cnblogs.com/xkl520xka/p/5899876.html

    1. 2.  Jboss配置Jndi数据源

    2.1        首先将数据库的驱动jar文件拷贝到jboss解压文件后serverdefaultlib目录里面(比如mysql,oracle,db2等)

    2.2        在docsexamplesjca找到mysql-ds.xml将该文件拷贝到serverdefaultdeploy目录下面 

    2.3        打开mysql-ds.xml可以看到数据的链接配置,根据自己的数据库修改好配置,下面是我自己的配置,大家可以根据自己的数据库,具体进行修改 

     <?xml version="1.0" encoding="UTF-8"?>

    <datasources>

      <local-tx-datasource>

        <jndi-name>DB2DS</jndi-name>

       <use-java-context>false</use-java-context>

        <connection-url>jdbc:db2://192.168.2.129:50000/test1</connection-url>

        <driver-class>COM.ibm.db2.jdbc.app.DB2Driver</driver-class>

        <user-name>db2inst1</user-name>

        <password>nbs2o13</password>[t3] 

        <min-pool-size>0</min-pool-size>

          <metadata>

             <type-mapping>DB2</type-mapping>

          </metadata>

      </local-tx-datasource>

    </datasources>

    2.4        配置好后,启动Jboss,打开浏览器,访问http://localhost:8080/jmx-console/,在页面左侧点击jboss.jca,右侧可查看到

    name= DB2DS,service=DataSourceBinding  

    name= DB2DS,service=LocalTxCM  

    name= DB2DS,service=ManagedConnectionFactory  

    name= DB2DS,service=ManagedConnectionPool

    说明数据源发布成功 

    启动Jboss,执行测试,发现数据源不能拿到的,但是我们的数据源是发布成功的,查找资料后发现需要在发布的数据源mysql-ds.xml里面加上<use-java-context>false</use-java-context> 
    然后执行测试,测试可通过,到此JBOSS发布JNDI数据源成功 

    参考博客:

     http://sence-qi.iteye.com/blog/1561750

    http://blog.sina.com.cn/s/blog_676015470100oidr.html


     [t1]红色为需要配置的信息

     [t2]红色为需要配置的信息

     [t3]红色为自己要配置的信息

    <use-java-context>false</use-java-context>可以不添加

  • 相关阅读:
    arcgis10寻宝 使用一个图层切割一个数据集下所有数据
    ArcGIS 图框生成,批量打印,mxd和jpg图片一气呵成,一劳永逸
    思想>人生
    MySql MediumBlob——MySql的Bolb四种类型
    黄金连分数(高精度除法)
    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'
    第九学 linux内核——内存寻址——分页机制(1)
    ACID——数据库事务正确执行的四个基本要素
    10位创始人的寄语
    Zookeeper(八)分布式队列
  • 原文地址:https://www.cnblogs.com/lwy19998273333/p/6679391.html
Copyright © 2011-2022 走看看