使用JNDI配置数据源(转)

环境:tomcat7.0   jre6  mysql

 1.mysql驱动程序添加到web项目的lib文件下。

 2.META-INF下创建一个context.xml(也可以不写在这,在tomcat的server.xml下也可以,这里只放在自己项目下只供自己项目使用。)

 [java]

 <?xml version="1.0" encoding="UTF-8"?>  
  1. <Context>  
  2.     <Resource name="jdbc/test"   
  3.               auth="Container"  
  4.               type="javax.sql.DataSource"  
  5.               username="root"  
  6.               password="root"  
  7.               driverClassName="com.mysql.jdbc.Driver"   
  8.               url="jdbc:mysql://localhost/test"  
  9.               maxActive="100"  
  10.               maxIdle="30"  
  11.               maxWait="5000"/>  
  12. </Context>  

3.项目的web.xml中加入如下:

 [html] 

 <resource-ref>  
  1.     <description>MySQL DataSource</description>  
  2.     <res-ref-name>jdbc/test </res-ref-name>  
  3.     <res-type>javax.sql.DataSource</res-type>  
  4.     <res-auth>Container</res-auth>  
  5.   </resource-ref>  

4.就以上两步。下面配置好servlet。可以在servlet类中测试获取Connection对象。

关键代码:

 [java] 

    1. Context initCtx = new InitialContext();  
    2. Object obj = initCtx.lookup("java:comp/env/jdbc/test");  
    3. // java:comp/env 是环境命名上下文  
    4. // 例如:dataSource = (DataSource)  
    5. // //ctx.lookup("java:comp/env/jdbc/DBPool");  
    6. // 它会从相应配置文件中加载名为"jdbc/DBPool"的对象  
    7. DataSource ds = (DataSource) obj; // 取得DataSource的引用,并保存在ds中  
    8. return ds.getConnection();  
    9. // 每次访问数据库都调用类自身的getConnection()方法,从DataSource的数据库连接池中取出//一个空闲状态的连接  

posted on 2013-05-04 22:18  kangxuebin  阅读(104)  评论(0)    收藏  举报

导航