1、包下载(DBCP类似)
commons-dbutils-1.4.jar commons-dbutils-1.4.jar
提取码 3vk8
2、类
package cn.gson.utils;
import java.sql.Connection;
import java.sql.SQLException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
/**
* @author linoer
* JNDI数据源工具类
*/
public class JNDIUtil {
//1、定义数据源
private static DataSource ds;
//2、给数据源赋值
static{
try {
Context initCtx = new InitialContext();
ds = (DataSource) initCtx.lookup("java:comp/env/jdbc/linoer");//需要配置
} catch (NamingException e) {
throw new ExceptionInInitializerError("初始化连接失败");
}
}
//3、提供一个获取数据源的方法
public static DataSource getDataSource(){
return ds;
}
//4、提供一个获取连接的方法
public static Connection getConnection(){
try {
return ds.getConnection();
} catch (SQLException e) {
// TODO Auto-generated catch block
throw new RuntimeException(e);
}
}
}
3、配置
①在虚拟目录下
②在MATE-INF下创建context.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Resource name="jdbc/linoer" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="root" password="root" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/linoer"/>
</Context>