配置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();