通过数据池可以节约资源,加快sql执行速度。
一般操纵数据库需要在每个操作前连接数据库,结束后释放资源。数据池持续连接数据库。javabean需要操纵数据时,直接通过数据池就可以了。
首先在WEB-INF下创建web.xml文件,其中内容jsp的配置信息
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0" >
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/bookdb</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
然后在META-INF中创建context.xml文件,该文件是tomcat容器的配置信息(tomcat会读入该配置信息用于servlet)
<Context reloadable="true" >
<Resource name="jdbc/bookdb" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="dbuser" password="1234"
driverClassName="com.mysql.cj.jdbc.Driver"
url="jdbc:mysql://localhost:3306/bookdb/>
</Context>
最后通过jsp中
Context ctx = new InitialContext();
DataSource ds =(DataSource)ctx.lookup("java:comp/env/jdbc/bookdb");//获取连接池资源
con = ds.getConnection();