zoukankan      html  css  js  c++  java
  • Java使用JNDI技术获取DataSource对象

    package common;

    import java.sql.Connection;
    import java.sql.SQLException;
    import javax.naming.Context;
    import javax.naming.InitialContext;
    import javax.naming.NamingException;
    import javax.sql.DataSource;

    /**
    * 通过JNDI获取数据源
    *
    * @author 周尚武 时间:2008年12月8日22:37:09
    */
    public class DBConnection {
    /**
    * 通过JNDI获取数据源在获取连接对象
    *
    * @return Connection con
    */
    public static Connection getCon(){
    Connection con = null;
    try {
    Context ic = new InitialContext();
    DataSource source = (DataSource)ic.lookup("java:comp/env/jdbc/books");
    con = source.getConnection();
    } catch (NamingException e) {
    System.out.println("数据源没找到!");
    e.printStackTrace();
    } catch (SQLException e) {
    System.out.println("获取数连接对象失败!");
    e.printStackTrace();
    }
    return con;
    }
    }

    JNDI的配置:

    1.context.xml文件的配置:

    <Resource name="jdbc/books"
    auth="Container" type="javax.sql.DataSource" maxActive="100"
    maxIdle="30" maxWait="10000" username="sa" password="123"
    driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
    url="jdbc:sqlserver://localhost:1433;databasename=books"/>

    2.web.xml文件的配置:

    <resource-ref>
    <res-ref-name> jdbc/books </res-ref-name>
    <res-type> javax.sql.DataSource </res-type>
    <res-auth> Container </res-auth>
    </resource-ref>

    3.添加数据库驱动文件:

    通过数据源访问数据库,由于数据源由Tomcat 维护,所有必须把JDBC驱动程序复制到Tomcat的common/lib目录下。
  • 相关阅读:
    NYOJ 123士兵杀敌(四)(树状数组)(插线问点)
    NYOJ 634万里挑一(优先队列)
    NYOJ 119士兵杀敌(三)(RMQ问题)(ST表)
    NYOJ 116士兵杀敌(二)(树状数组)(插点问线)
    迁移anaconda导致原来jupyter notebook无法使用
    Anaconda安装
    pandas注意点
    群与双线性映射
    numpy.cov() 协方差计算方法
    Annoy模型
  • 原文地址:https://www.cnblogs.com/archermeng/p/7537474.html
Copyright © 2011-2022 走看看