;???當(dāng)您面臨JSP連接MySQL數(shù)據(jù)庫(kù)問題 你首先需要在MySQL數(shù)據(jù)庫(kù)里創(chuàng)建一username表 表里面創(chuàng)建兩個(gè)字符型的字段 字段名分別為 uid pwd 然后插入幾條測(cè)試數(shù)據(jù)
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶,將通過(guò)不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:國(guó)際域名空間、雅安服務(wù)器托管、營(yíng)銷軟件、網(wǎng)站建設(shè)、舞陽(yáng)網(wǎng)站維護(hù)、網(wǎng)站推廣。
以下用兩種方式來(lái)實(shí)現(xiàn)JSP連接MySql數(shù)據(jù)庫(kù)
第一種方式 用JSP實(shí)現(xiàn):
%//*******************************
****************
JDBC_ODBC連接MySql數(shù)據(jù)庫(kù),不需要設(shè)置數(shù)據(jù)源***********
**********************/
//********** 數(shù)據(jù)庫(kù)連接代碼 開始 ******/
//以下幾項(xiàng)請(qǐng)自行修改String server="localhost";
//MYSQL 服務(wù)器的地址String dbname="test";
//MYSQL 數(shù)據(jù)庫(kù)的名字String user="root";
//MYSQL 數(shù)據(jù)庫(kù)的登錄用戶名String pass="chfanwsp";
//MYSQL 數(shù)據(jù)庫(kù)的登錄密碼String port="3306";
//SQL Server 服務(wù)器的端口號(hào),
默認(rèn)為1433//數(shù)據(jù)庫(kù)連接字符串
String url ="jdbc:mysql://"+server+":"+port+"/"+dbname+"?
user="+user+"passWord="+pass+"useUnicode
=truecharacterEncoding=GB2312";
//加載驅(qū)動(dòng)程序Class.forName(".gjt.mm.mysql.Driver").newInstance();
//建立連接Connection conn= DriverManager.getConnection(url);
//創(chuàng)建語(yǔ)句對(duì)象Statement stmt=conn.createStatement
(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);
// **** 數(shù)據(jù)庫(kù)連接代碼 結(jié)束 *******
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();% %@ page contentType= text/; charset=gb language= java ?import= java sql * %meta equiv= Content Type content= text/; charset=gb %//*********************************************** ?JDBC_ODBC連接MySql數(shù)據(jù)庫(kù) 不需要設(shè)置數(shù)據(jù)源*********************************/? ?//********** 數(shù)據(jù)庫(kù)連接代碼 開始 ******/?? //以下幾項(xiàng)請(qǐng)自行修改String server= localhost ;??????? //MYSQL 服務(wù)器的地址String dbname= test ;?????????? ?//MYSQL 數(shù)據(jù)庫(kù)的名字String user= root ;??????????????? //MYSQL 數(shù)據(jù)庫(kù)的登錄用戶名String pass= chfanwsp ;??????????? //MYSQL 數(shù)據(jù)庫(kù)的登錄密碼String port= ;??? //SQL Server 服務(wù)器的端口號(hào) 默認(rèn)為 //數(shù)據(jù)庫(kù)連接字符串?String url = jdbc:mysql:// +server+ : +port+ / +dbname+ ?user= +user+ passWord= +pass+ useUnicode=truecharacterEncoding=GB ; //加載驅(qū)動(dòng)程序Class forName( gjt mm mysql Driver ) newInstance();//建立連接Connection conn= DriverManager getConnection(url); //創(chuàng)建語(yǔ)句對(duì)象Statement stmt=conn createStatement(ResultSet TYPE_SCROLL_SENSITIVE ResultSet CONCUR_UPDATABLE);// ****???? 數(shù)據(jù)庫(kù)連接代碼 結(jié)束 *******? ? 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();%
lishixinzhi/Article/program/MySQL/201311/29619
一. 數(shù)據(jù)庫(kù)的連接和操作筆記:
1.初始化連接字符串
2. 發(fā)送請(qǐng)求連接
3.如果需要對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作,如查詢,添加,刪除,修改等,則發(fā)送數(shù)據(jù)庫(kù)操作請(qǐng) 求,成功就返回結(jié)果,不成功操作失敗
4. 不進(jìn)行操作就關(guān)閉數(shù)據(jù)庫(kù)操作,以及關(guān)閉數(shù)據(jù)庫(kù)發(fā)送請(qǐng)求
二.配置環(huán)境
”工欲善其事必先利其器“ 在配置之前必須準(zhǔn)備好幾個(gè)必要的文件java 的jdk(我用的是1.5),Tomcat(我的是5.5) ,mysql(5.0),jdbc(mysql-connector-java-3.1.14.zip) 的驅(qū)動(dòng),當(dāng)然還有Dreamweaver 等等必要工具。
第一件事情:安裝jdk 1.5版本,安裝tomcat,mysql,解壓jdbc到包(官方網(wǎng)站有下載,注冊(cè)一個(gè)就行)
第二件事情:配置jdk,配置tomcat,jdbc
jdbc的配置:我的解壓目錄是 I:\mysql-connector-java-3.1.14 里面可以看到一個(gè)mysql-connector-java-3.1.14-bin.jar 這個(gè)jar 的文件。右鍵打開電腦屬性-----高級(jí)---環(huán)境變量---找到系統(tǒng)變量。。點(diǎn)擊CLASSPATH,進(jìn)行”編輯“ 加入I:\mysql-connector-java-3.1.14\mysql-connector-java-3.1.14-bin.jar 這個(gè)路徑去,這里說(shuō)明的我是盤式i盤,jdbc可以隨便解壓到那個(gè)盤都行,指定路徑就是。
第二步:jdbc解壓包下 mysql-connector-java-3.1.14-bin.jar 這個(gè)文件放入到Tomcat安裝目錄下
Tomcat 5.5\common\lib
Tomcat 5.5\shared\lib
這兩個(gè)文件夾里面。
基本上的工作就完成了。呵呵(當(dāng)然這個(gè)要看網(wǎng)上的資料,這里要自己重新寫一次 唉好苦啊,沒得抄)
基本工作準(zhǔn)備好,找一個(gè)mysql 數(shù)據(jù)庫(kù)的界面操作 GUI軟件 名字為: navicat(這個(gè)很好用)打開mysql,測(cè)試一下自己的mysql 可不可以連通,可以的話那么就可以新建一個(gè)數(shù)據(jù)庫(kù)test,一個(gè)表為mytest,字段是id和myname(這個(gè)隨便也行)
其實(shí),在JSP頁(yè)面上寫對(duì)數(shù)據(jù)庫(kù)的連接,實(shí)際上和用Java程序?qū)懸粯?,只是前者是將代碼都寫到前臺(tái)頁(yè)面上了,只要用%%這兩個(gè)符號(hào)將程序括起來(lái)就行了,也就是將程序?qū)懙竭@兩個(gè)符號(hào)里面,Java代碼中一如包的方法是用import java.XX,XX;在JSP頁(yè)面上引入jar包的方法是%@ import="java.util.*"%,中間的部分就是連接數(shù)據(jù)的方法了,一下你可以參考一下:
%
Connection con = null;
String url = null;
try {
Class.forName("這里是你的數(shù)據(jù)庫(kù)的驅(qū)動(dòng)");
url = "這里是連接數(shù)據(jù)庫(kù)端口,以及數(shù)據(jù)庫(kù)名稱";
con = DriverManager.getConnection(url,"用戶名","密碼");
System.out.println("連接數(shù)據(jù)庫(kù)成功");
} catch (Exception e) {
System.out.println("連接數(shù)據(jù)庫(kù)失敗"+e);
}
你可以查看后臺(tái)的控制臺(tái),來(lái)判斷數(shù)據(jù)庫(kù)是否連接成功,希望對(duì)你有幫助
我寫的一個(gè)用JSP連接MySQL數(shù)據(jù)庫(kù)的代碼。
要正確的使用這段代碼,你需要首先在MySQL數(shù)據(jù)庫(kù)里創(chuàng)建一username表,表里面創(chuàng)建兩個(gè)字符型的字段,字段名分別為:uid,pwd,然后插入幾條測(cè)試數(shù)據(jù)。
以下用兩種方式來(lái)實(shí)現(xiàn)JSP連接MySql數(shù)據(jù)庫(kù)。
第一種方式,用JSP實(shí)現(xiàn)。
%@ page contentType="text/html; charset=gb2312" language="java"
import="java.sql.*"%
%
//**************************************
********* JDBC_ODBC連接MySql數(shù)據(jù)庫(kù),不需要設(shè)置數(shù)據(jù)源
*********************************/
//********** 數(shù)據(jù)庫(kù)連接代碼 開始 ******/
//以下幾項(xiàng)請(qǐng)自行修改
String server="localhost"; //MYSQL 服務(wù)器的地址
String dbname="test"; //MYSQL 數(shù)據(jù)庫(kù)的名字
String user="root"; //MYSQL 數(shù)據(jù)庫(kù)的登錄用戶名
String pass="chfanwsp"; //MYSQL 數(shù)據(jù)庫(kù)的登錄密碼
String port="3306"; //SQL Server 服務(wù)器的端口號(hào),默認(rèn)為1433
//數(shù)據(jù)庫(kù)連接字符串
String url ="jdbc:mysql://"+server+":"+port+"/"+dbname+"?user="+user+
"password="+pass+"useUnicode=truecharacterEncoding=GB2312";
//加載驅(qū)動(dòng)程序
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
//建立連接
Connection conn= DriverManager.getConnection(url);
//創(chuàng)建語(yǔ)句對(duì)象
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);
// **** 數(shù)據(jù)庫(kù)連接代碼 結(jié)束 *******
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來(lái)實(shí)現(xiàn)。請(qǐng)看代碼:
DBConnMySql.java
編譯以后的Class文件應(yīng)該放在WEB-INF\classes\conn目錄下。
package conn; //導(dǎo)入包
import java.sql.*; //導(dǎo)入數(shù)據(jù)庫(kù)操作的類
public class DBConnMySql //構(gòu)造方法,初始化
{
private Connection conn; //連接對(duì)象
private Statement stmt; //語(yǔ)句對(duì)象
private ResultSet rs; //結(jié)果集對(duì)象
private String MySqldriver;//MYSQL Server驅(qū)動(dòng)程序字符串
private String MySqlURL; //MYSQL Server連接字符串
//********************************
*用 org.gjt.mm.mysql.Driver 驅(qū)動(dòng)
* 該方法取得連接所需各種參數(shù),組成連接字符串,然后再建立連接
* server;dbname,user,pass,port 分別表示MYSQL 服務(wù)器的地址,
* 數(shù)據(jù)庫(kù),用戶名,密碼,端口
**********************************/
public Connection getConnToMySql(String server,String dbname,
String user,String pass,String port){
//MYSQl驅(qū)動(dòng)程序
MySqldriver = "org.gjt.mm.mysql.Driver";
MySqlURL = "jdbc:mysql://"; //連接字符串一部分
try{
//完整的連接字符串
MySqlURL =MySqlURL+server+":"+port+"/"+dbname+
"?user="+user+"password="+pass+
"useUnicode=truecharacterEncoding=GB2312";
Class.forName(MySqldriver);
conn = DriverManager.getConnection(MySqlURL);
}catch(Exception e){
System.out.println("操作數(shù)據(jù)庫(kù)出錯(cuò),請(qǐng)仔細(xì)檢查");
//System.err.println(e.getMessage());
}
return conn;
}
//關(guān)閉數(shù)據(jù)庫(kù)連接
public void close()
{
try{
//rs.close();
//stmt.close();
conn.close();
}catch(SQLException sqlexception){
sqlexception.printStackTrace();
}
}
}
這個(gè)文件只是實(shí)現(xiàn)了數(shù)據(jù)庫(kù)的連接,下面我們?cè)賹懸粋€(gè)測(cè)試文件。
就是用sql語(yǔ)句從數(shù)據(jù)庫(kù)里查詢出記錄,以驗(yàn)證我們數(shù)據(jù)庫(kù)的連接是否成功。
connmysql.jsp文件源代碼如下:
%@ page contentType="text/html; charset=gb2312" language="java"
import="java.sql.*" %
%
//以下幾項(xiàng)請(qǐng)自行修改
String server="localhost"; //MYSQL 服務(wù)器的地址
String dbname="test"; //MYSQL 數(shù)據(jù)庫(kù)的名字
String user="root"; //MYSQL 數(shù)據(jù)庫(kù)的登錄用戶名
String pass="chfanwsp"; //MYSQL 數(shù)據(jù)庫(kù)的登錄密碼
String port="3306"; //SQL Server 服務(wù)器的端口號(hào),默認(rèn)為1433
Connection 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('夢(mèng)想年華','夢(mèng)想年華')";
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();
%