先在控制台里配置MYSQL数据源
JNDI Name: jdbc/mysql
Data Source URL: jdbc:mysql://127.0.0.1/mysql
JDBC Driver Class: org.gjt.mm.mysql.Driver
User Name: root
Password: ********
Max. Active Connections: 4
Max. Idle Connections: 2
Max. Wait for Connection: 500
Validation Query:
在C:/tomcat/conf/Catalina/localhost下建立dstest.xml
<?xml version='1.0' encoding='utf-8'?>
<Context displayName="Welcome to Tomcat" docBase="dstest" path="/dstest" workDir="work/Catalina/localhost/_">
<ResourceLink
name="jdbc/mysql"
type="javax.sql.DataSource"
global="jdbc/mysql"/>
</Context>
修改web.xml
在</web-app>的前面添加以下内容:
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/mysql</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
JSP文件
<%@ page import="java.sql.*"%>
<%@ page import="javax.sql.*"%>
<%@ page import="javax.naming.*"%>
<%@ page contentType="text/html;charset=gb2312"%>
<html>
<head>
<title></title>
</head>
<body>
<%
System.out.print("我的测试开始/n");
DataSource ds = null;
try{
InitialContext ctx=new InitialContext();
System.out.print("***********1/n");
ds=(DataSource)ctx.lookup("java:comp/env/jdbc/mysql");
System.out.print("***********2/n");
Connection conn = ds.getConnection();
out.print("已连上数据库!");
Statement stmt = conn.createStatement();
//提示:users必须是数据库已有的表,
//这里的数据库前文提及的Data Source URL配置里包含的数据库。
String strSql = "select * from db";
ResultSet rs = stmt.executeQuery(strSql);
while(rs.next()){
out.print(rs.getString(1));
}
out.print("我的测试结束1/n");
System.out.print("***********3/n");
}
catch(Exception ex){
out.print(ex.getMessage());
ex.printStackTrace();
}
%>
</body>
</html>