开发JavaWeb应用,必须使用一个JavaWeb服务器,JavaWeb服务器都内置数据源。
Tomcat:(DBCP)
数据源只需要配置服务器即可。
配置数据源的步骤:
1、拷贝数据库连接的jar到tomcatlib目录下,也就是mysql-Connector包
2、配置数据源XML文件
a)如果把配置信息写在tomcat下的conf目录的context.xml中,那么所有应用都能使用此数据源。
b)如果是在当前应用的META-INF中创建context.xml, 编写数据源,那么只有当前应用可以使用。
xml文件的配置
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Resource name="jdbc/day40_datasource" 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/db1"/>
</Context>
我们用到了tomcat服务器,因此我们需要在能用到它的地方写代码,比如写到jsp文件里。
我们只需要用就可以,就不需要我们自己定义工具类了。
<%@page import="javax.naming.Context"%>
<%@page import="javax.naming.InitialContext"%>
<%@page import="java.sql.Connection"%>
<%@page import="javax.sql.DataSource"%>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<%
//使用tomcat提供的数据源(连接池)
Context initContext = new InitialContext();
Context envContext = (Context)initContext.lookup("java:/comp/env");
//通过name指明连接池使用的配置信息 JNDI
DataSource ds = (DataSource)envContext.lookup("jdbc/day40_datasource");
这里的参数是配置文件中的name,通过name寻找到配置文件。
Connection conn = ds.getConnection();
out.print(conn);
%>
</body>
</html>