top
Loading...
教你輕松應對JSP連接MySQL數據庫問題

當您面臨JSP連接MySQL數據庫問題,你首先需要在MySQL數據庫里創建一username表,表里面創建兩個字符型的字段,字段名分別為:uid,pwd,然后插入幾條測試數據。

以下用兩種方式來實現JSP連接MySql數據庫

第一種方式,用JSP實現:

<%@ page contentType="text/html; charset=gb2312" language="java"  import="java.sql.*"%><%//***********************************************  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")+"
");}rs.close();stmt.close();conn.close();%>

第二種方式,用JavaBean來實現:

DBConnMySql.java編譯以后的Class文件應該放在Web-INFclassesconn目錄下。

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文件源代碼如下:

<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*"  %><% //以下幾項請自行修改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")+"
");}//rs.close();//stmt.close();//conn.close();DBConn.close();%>

作者:http://www.zhujiangroad.com
來源:http://www.zhujiangroad.com
北斗有巢氏 有巢氏北斗