以下用兩種方式來實現JSP連接MySQL數據庫
第一種方式,用JSP實現:
<%@ page contentType="text/Html;
charset=gb2312" language="Java"
import="Java.sql.*"%>
<meta http-equiv="Content-Type" content="text/Html; charset=gb2312">
<%//*******************************
****************
JDBC_ODBC連接MySQL數據庫,不需要設置數據源***********
**********************/
//********** 數據庫連接代碼 開始 ******/
//以下幾項請自行修改String server="localhost";
//MySQL 服務器的地址String dbname="test";
//MySQL 數據庫的名字String user="root";
//MySQL 數據庫的登錄用戶名String pass="chfanwsp";
//MySQL 數據庫的登錄密碼String port="3306";
//SQL Server 服務器的端口號,
默認為1433//數據庫連接字符串
String url ="jdbc:MySQL://"+server+":"+port+"/"+dbname+"?
user="+user+"&passWord="+pass+"&useUnicode
=true&characterEncoding=GB2312";
//加載驅動程序Class.forName("org.gjt.mm.MySQL.Driver").newInstance();
//建立連接Connection conn= DriverManager.getConnection(url);
//創建語句對象Statement stmt=conn.createStatement
(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);
// **** 數據庫連接代碼 結束 *******
String sql="select * from username";
ResultSet rs=stmt.executeQuery(sql);
//rs.first();while(rs.next()){out.print("用戶名:");
out.print(rs.getString("uid")+" 密碼:");
out.println(rs.getString("pwd")+"<br>");}
rs.close();stmt.close();conn.close();%>
第二種方式,用JavaBean來實現:
DBConnMySQL.Java編譯以後的Class文件應該放在Web-INF\classes\conn目錄下。
package conn; //導入包import Java.sql.*;
//導入數據庫操作的類public class DBConnMySQL
//構造方法,初始化{private Connection conn;
//連接對象private Statement stmt;
//語句對象private ResultSet rs;
//結果集對象private String MySQLdriver;
//MYSQL Server驅動程序字符串private String MySQLURL;
//MYSQL Server連接字符串//*********************************
用 org.gjt.mm.MySQL.Driver 驅動
* 該方法取得連接所需各種參數,組成連接字符串,
然後再建立連接* server;dbname,user,pass,port
分別表示MySQL 服務器的地址,
* 數據庫,用戶名,密碼,端口
**********************************/
public Connection getConnToMySQL
(String server,String dbname,String user,String pass,String port)
{//MYSQl驅動程序MySqldriver = "org.gjt.mm.MySQL.Driver";
MySqlURL = "jdbc:MySQL://";
//連接字符串一部分try{//完整的連接字符串MySQLURL
=MySQLURL+server+":"+port+"/"+dbname+"?user=
"+user+"&passWord="+pass+"&useUnicode
=true&characterEncoding=GB2312";
Class.forName(MySQLdriver);conn
= DriverManager.getConnection(MySQLURL);}
catch(Exception e){System.out.println
("操作數據庫出錯,請仔細檢查");
//System.err.println(e.getMessage());}return conn;}
//關閉數據庫連接public void close(){try{//rs.close();
//stmt.close();conn.close();}catch(SQLException
sqlexception){sqlexception.printStackTrace();}}}
這個文件只是實現了數據庫的連接,下面再寫一個測試文件,就是用SQL語句從數據庫裡查詢出記錄,以驗證我們數據庫的連接是否成功。
connMySQL.JSP文件源代碼如下:
<meta http-equiv="Content-Type" content="text/Html;
charset=gb2312"><%@ page contentType="text/Html;
charset=gb2312" language="java" import="Java.sql.*" %>
<JSP:useBean id="DBConn" scope="page" class="conn.DBConnMySQL"/>
<% //以下幾項請自行修改String server="localhost";
//MySQL 服務器的地址String dbname="test";
//MySQL 數據庫的名字String user="root";
//MySQL 數據庫的登錄用戶名String pass="chfanwsp";
//MySQL 數據庫的登錄密碼String port="3306";
//SQL Server 服務器的端口號,默認為1433Connection
conn=DBConn.getConnToMySQL
(server,dbname,user,pass,port);
Statement stmt=conn.createStatement
(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
String sql="select * from username";
String sql1="insert into username (uid,pwd) values
('夢想年華','夢想年華')";stmt.executeUpdate(sql1);
ResultSet rs=stmt.executeQuery(sql);while(rs.next())
{out.print("用戶名:");out.print(rs.getString("uid")+" 密碼:");
out.println(rs.getString("pwd")+"<br>");}
//rs.close();//stmt.close();//conn.close();DBConn.close();%>