配置JNDI数据源

配置JNDI数据源:

在MATE-INF中新建一个context.xml

<?xml version="1.0" encoding="UTF-8"?>
<Context>
    <WatchedResource>WEB-INF/web.xml</WatchedResource>
    <Resource name="jndisoure" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000"
    username="test" password="test" driverClassName="oracle.jdbc.OracleDriver" url="jdbc:oracle:thin:@127.0.0.1:1521:orcl" /> 
</Context>

name:指定Resource的JNDI的名字
type:指定管理Resource的Manager,由两个可选值:Container和Application。Container表示由容器来创建和管理 Resource,Application表示由WEB应用来创建和管理Resource。
如果在web application deployment descriptor中使用<resource-ref></resource-ref>,这个属性是必需的,
如果使用 <resource-env-ref></resource-env-ref>,这个属性是可选的
maxActive:指定数据库连接池中处于活动状态的数据库连接最大数目,0表示不受限制
maxIdle:指定数据库连接池中处于空闲状态的数据库连接的最大数目,0表示不受限制
maxWait:指定数据库连接池中的数据库连接处于空闲状态的最长时间(单位为毫秒),超过这一事件,将会抛出异常。-1表示可以无限期等待。

调用方式

Context initContext = new InitialContext(); 
Context context = (Context) initContext.lookup("java:comp/env"); 
DataSource dataSource = (DataSource)context.lookup("jndisoure");
Connection conn = dataSource.getConnection();
原文地址:https://www.cnblogs.com/gavinYang/p/3512879.html