JNDI总结

来源:互联网 发布:ubuntu软件更新器 编辑:程序博客网 时间:2024/06/07 05:50
JNDI(Java Naming And Directory Interface)
程序员应该不需要关心“具体的数据库后台是什么?JDBC驱动程序是什么?JDBC URL格式是什么?访问数据库的用户名和口令是什么?”
等等这些问题,程序员编写的程序应该没有对 JDBC 驱动程序的引用,没有服务器名称,没有用户名称或口令, 甚至没有数据库池或连接管理。
而是把这些问题交给J2EE容器来配置和管理,程序员只需要对这些配置和管理进行引用即可。由此,就有了JNDI。




Tomcat配置JNDI数据源连接池


1.数据库连接
  
2.连接池


3.Tomcat配置JNDI数据源连接池


  配置方法一:使用tomcat默认的DBCP连接池(全局数据源)
  
   第一步:将要连接的数据库驱动程序复制到tomcat安装目录下的lib文件夹
 
   第二步:找到tomcat安装目录下context.xml文件,并在其中添加如下内容

  [conf\context.xml]

  <Resource 
      name=""  --JNDI 对象的名称
      type=""  --资源类型
      scope="" --作用域,可省略
      factory="" -- 对象工厂
      username="" --数据库账号
      url=""  --连接数据库的URL
      driverClassName="" --数据库驱动类
      password="" --数据库账号的密码
      maxActive="" --连接池最大连接数
      maxIdle=""   --连接池最小连接数 
      />
  实例:

 <Resource name="jdbc/oraqzg"  type="javax.sql.DataSource"  scope="share"  username="scott"  password="tiger"  driverClassName="oracle.jdbc.OracleDriver"  url="jdbc:oracle:thin:@127.0.0.1:1521:orcl"  maxActive="10"  maxIdle="3" />
 第三步:直接在代码中使用
    Context ctx = new InitialContext();
    DataSource ds = (DataSource)ctx.lookup("java:comp/env/对象名称");
    Connection con = ds.getConnection();



配置方法二:使用tomcat默认的DBCP连接池(全局数据源)不推荐使用
    第一步:将要连接的数据库驱动程序复制到tomcat安装目录下的lib文件夹
 
   第二步:找到tomcat安装目录下server.xml文件,并在<globalmappingresources>标签中添加如下内容
  
  
  <Resource 
      name=""  --JNDI 对象的名称
      type=""  --资源类型
      scope="" --作用域
      factory="" -- 对象工厂
      username="" --数据库账号
      url=""  --连接数据库的URL
      driverClassName="" --数据库驱动类
      password="" --数据库账号的密码
      maxActive="" --连接池最大连接数
      maxIdle=""   --连接池最小连接数 
      />
 
实例:
  <Resource name="jdbc/oraqzg"
 type="javax.sql.DataSource"
 scope="share"
 username="scott"
 password="tiger"
 driverClassName="oracle.jdbc.OracleDriver"
 url="jdbc:oracle:thin:@127.0.0.1:1521:orcl"
 maxActive="10"
 maxIdle="3" />


   第三步:在工程webRoot\meta-info下创建一个context.xml文件,并添加如下内容
   <Context>
    <ResourceLink name="jdbc/oraqzg" 
       type="javax.sql.DataSource"
       global="jdbc/oraqzg"/>
  </Context>




  第四步:直接在代码中使用
    Context ctx = new InitialContext();
    DataSource ds = (DataSource)ctx.lookup("java:comp/env/对象名称");
    Connection con = ds.getConnection();


 配置方法三:使用tomcat默认的DBCP连接池(局部数据源)  推荐使用
     第一步:将要连接的数据库驱动程序复制到tomcat安装目录下的lib文件夹(建议放在项目工程目录下)
    第二步:在工程webRoot\meta-info下创建一个context.xml文件,并添加如下内容

  <Context>    <Resource name="jdbc/oraqzg"  type="javax.sql.DataSource"  scope="share"  username="scott"  password="tiger"  driverClassName="oracle.jdbc.OracleDriver"  url="jdbc:oracle:thin:@127.0.0.1:1521:orcl"  maxActive="10"  maxIdle="3" />   </Context>


   
  第三步:web.xml可以不需要配置;
  第四步:直接在代码中使用
    Context ctx = new InitialContext();
    DataSource ds = (DataSource)ctx.lookup("java:comp/env/对象名称");
    Connection con = ds.getConnection();

0 0
原创粉丝点击