小编今天动手试了下怎么通过配置数据资源来连接MySQL,在尝试怎么配置的的过程中确实走了不少的弯路,但也发现这种连接数据库的方法相比之前那种I及写个工具类然后弄成一个架包直接调用那么灵活,但是既然学了就要分享,以及记录下自己的的错误,防止大家走不必要的弯路,接下来我就说说我的错误吧:
(1)在配置数据资源的过程没有注意自己的数据库名称要与web.xml里面的名字一致
(2)在测试过程中由于Tomcat启动的次数过多,而且 没及时关闭,最后出现启动Tomcat的时候出现系统文件找不到,直接导致Tomcat不能正常运行,这时候我们怎么办呢?小编网上找了好多资料看结果没发现一个适合自己的,所以我自己琢磨,最后发现可以这么做点击window---preferrnences----server----runtime enviorment---重新添加一个Apache Tomcat 最后在测试的时候就直接用这个添加的即可。
好了上面就是我个人的错误,西面就直接教教大家这么来配置吧
(1)在自己的project目录下找到servers然后打开context.xml输入下面这段代码
<Resource name="jdbc/book" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="root" password="1111" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/book"/>
那些注释可以直接去掉,这里要注意自己的变量,如
name="jdbc/book" 这个book是我的数据库名字,这里作为参考,具体的你们自己看着办
url="jdbc:mysql://localhost:3306/book" username="root" password="1111" 这些是我的数据库定义的
(2)编辑web.xml,这个是你自己新建的那个web工程下WEB--INF下的,添加下面这段代码即可
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/book</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
注意:
<res-ref-name>jdbc/book</res-ref-name> 这里要你们自己改一下,book是我的数据库名字
(3)在最后便是测试了,编写一个login.jsp,然后自己新建数据库
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page import="java.sql.*" %>
<%@ page import="javax.sql.*" %>
<%@ page import="javax.naming.*" %>
<!DOCTYPE HTML PUBLIC /"-//W3C//DTD HTML 4.01 Transitional//EN/">
<html>
<head>
<title>测试数据库连接</title>
</head>
<body>
<%
out.print("My test begin/");
try{
InitialContext ctx=new InitialContext();
DataSource ds=(DataSource)ctx.lookup("java:comp/env/jdbc/book");
Connection conn=ds.getConnection();
Statement stmt=conn.createStatement();
String strSql="select * from user";
ResultSet rs=stmt.executeQuery(strSql);
while(rs.next()){
out.print(rs.getString(1)+"<br>");
out.print(rs.getString(2)+"<br>");
out.print(rs.getString(3)+"<br>");
}
out.print("my test end/");
}catch(Exception e){
e.printStackTrace();
}
%>
</body>
</html>
(4)接下来就是我自己运行成功的结果
(5)还要讲mysql-connector-java-5.0.8-bin.jar复制到Tomcat 下的lib文件夹下