为了能和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。
应用程序加载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用户有权访问数据库Car,root用户的密码是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>
运行结果如图所示: