JSP连接MySql数据库

为了能和MySql数据库服务器管理的数据库建立连接,必须保证该MySql数据库服务器已经启动,如果没有更改过MySql数据库服务器的配置,那么该数据库服务器占用的端口是3306

使用纯Java数据库驱动程序方式与数据库建立连接需要经过加载纯Java驱动程序,然后再和指定的数据库建立连接。

(1)加载纯Java驱动程序。

可以登录MySql的官方网站http://www.mysql.com,下载驱动程序,如mysql-connector-java-5.0.24.zip,将该ZIP文件解压至硬盘,在解压目录下的mysql-connector-java-5.0.24-bin.jar文件就是连接MySql数据库的纯Java驱动程序。将该驱动程序复制到Tomcat服务器所使用的JDK\jre\lib\ext文件夹中,如D:\jdk1.5\jre\lib\ext,或复制到Tomcat服务器安装目录的\common\lib文件夹中,如D:\apache-tomcat-5.5.20\common\lib然后重新启动Tomcat服务器。

应用程序加载MySql驱动程序代码如下:

Try{

    Class.forName(“com.mysql.jdbc.Driver”);

}

Catch(Exception e){}

(2)与指定的数据库建立连接。

假设应用程序和MySql服务器在同一台计算机上,那么应用程序和数据库Car建立连接的代码如下:

Try{

    String uri=”jdbc:mysql://localhost:3306/Car”;

    String user=”root”;

    String password=”123”;

    Con=DriverManager.getConnection(uri,user,password);

}

Catch(SQLException e){}

其中,root用户有权访问数据库Carroot用户的密码是123。如果root用户没有设置密码,那么将上述String password=”123”;更改为String password=””;

1 JSP页面连接MySql数据库auction、查询auction_admin表。

linkMysql.jsp

<%@ page contentType="text/html;charset=utf-8"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%
Connection con;
Statement sql;
ResultSet rs;
try{Class.forName("com.mysql.jdbc.Driver").newInstance();}
catch(Exception e){out.print(e);}
try{
    String uri="jdbc:mysql://localhost:3306/auction";
    con=DriverManager.getConnection(uri,"root","");
    sql=con.createStatement();
    rs=sql.executeQuery("SELECT * FROM auction_user");
    out.print("<table border=2>");
    out.print("<tr>");
    out.print("<th width=100>"+"user_id");
    out.print("<th width=100>"+"username");
    out.print("<th width=100>"+"userpass");
    out.print("<th width=100>"+"email");
    out.print("</tr>");
    while(rs.next()){
        out.print("<tr>");
        out.print("<td>"+rs.getString(1)+"</td>");
        out.print("<td>"+rs.getString(2)+"</td>");
        out.print("<td>"+rs.getString(3)+"</td>");
        out.print("<td>"+rs.getString(4)+"</td>");
        out.print("</tr>");
    }
    out.print("</table>");
    con.close();
}
catch(SQLException e1){out.print(e1);}
%>
</body>
</html>

运行结果如图所示:

posted @ 2013-05-06 21:31  源子陌  Views(10211)  Comments(0Edit  收藏  举报