定義:
JDBC(Java Data Base Connectivity,java數(shù)據(jù)庫連接)是一種用于執(zhí)行SQL語句的Java API赡盘,可以為多種關(guān)系數(shù)據(jù)庫提供統(tǒng)一訪問捡遍,它由一組用Java語言編寫的類和接口組成。
工具:
數(shù)據(jù)庫:Microsoft SQL Server 2012
代碼編寫:Eclipse和MyEclipse 2015
Microsoft JDBC Driver for SQL Server:
https://msdn.microsoft.com/en-us/library/mt484311(v=sql.110).aspx
(下載壓縮包眨业,解壓得到sqljdbc4.jar包)
一急膀、在數(shù)據(jù)庫中建立表,如下圖:
二龄捡、打開安全性——登錄名卓嫂。(可以使用已有的sa,或者自己新建一個(gè)登錄名:右擊登錄名聘殖,選擇新建登錄名晨雳。會(huì)出現(xiàn)登錄名——新建對(duì)話框行瑞。)
三、權(quán)限設(shè)置:在服務(wù)器角色一項(xiàng)餐禁,默認(rèn)的是選擇public血久,相當(dāng)于游客,只有登錄數(shù)據(jù)庫權(quán)限帮非。選擇sysadmin氧吐,給角色管理員權(quán)限。點(diǎn)擊確定末盔。
四筑舅、 端口設(shè)置
點(diǎn)擊“開始” ---“microsoft sql server2005”下會(huì)有個(gè)配置管理器,打開它陨舱,設(shè)為如下狀態(tài)
設(shè)置完后翠拣,需要重啟服務(wù)器.
數(shù)據(jù)庫設(shè)置完畢后,打開Eclipse隅忿,編寫java代碼連接數(shù)據(jù)庫:
1心剥、 新建一個(gè)java工程
單純java項(xiàng)目,用Eclipse引包方法
右擊你創(chuàng)建的工程背桐,找到Build path 优烧,選擇 Add External Archives,找到你要導(dǎo)入的包,點(diǎn)擊打開就可以引入了链峭,引入后在工程下面的Referencede Libraries下便能顯示這個(gè)包了
注:使用MyEclipse開發(fā)java web項(xiàng)目時(shí)引包:
自己搭建的Tomcat服務(wù)器畦娄,在根目錄:common\lib文件夾下導(dǎo)入包”滓牵或者Tomcat的webapps\web項(xiàng)目\WEB-INF\lib文件夾下導(dǎo)入包熙卡。
2、編寫java代碼励饵,(jdbc連接數(shù)據(jù)庫的方式)
import java.sql.*;
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
// SQL數(shù)據(jù)庫引擎
String JDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
//數(shù)據(jù)庫名字更改為你自己的數(shù)據(jù)庫名字2蛋!R厶M窍省!
String connectDB = "jdbc:sqlserver://127.0.0.1:1433;DatabaseName=ShopSystem";
try {
// 加載數(shù)據(jù)庫引擎典予,返回給定字符串名的類
Class.forName(JDriver);
} catch (ClassNotFoundException e) {
// e.printStackTrace();
System.out.println("加載數(shù)據(jù)庫引擎失敗");
System.exit(0);
}
System.out.println("數(shù)據(jù)庫驅(qū)動(dòng)成功");
try {
// 你自己創(chuàng)建的用戶名字和密碼L鸨酢!瘤袖!
String user = "sa";
String password = "xuelong";
// 連接數(shù)據(jù)庫對(duì)象
Connection con = DriverManager.getConnection(connectDB,user,password);
System.out.println("連接數(shù)據(jù)庫成功");
// 創(chuàng)建SQL命令對(duì)象
Statement stmt = con.createStatement();
System.out.println("查詢");
System.out.println("開始讀取數(shù)據(jù)");
// 返回SQL語句查詢結(jié)果集(集合)
ResultSet rs = stmt.executeQuery("SELECT * FROM Admin");
// 循環(huán)輸出每一條記錄
while (rs.next()) {
// 輸出每個(gè)字段
System.out.println(rs.getString("a_name") + "\t"
+ rs.getString("a_pass"));
}
System.out.println("讀取完畢");
// 關(guān)閉連接
stmt.close();// 關(guān)閉命令對(duì)象連接
con.close();// 關(guān)閉數(shù)據(jù)庫連接
} catch (SQLException e) {
e.printStackTrace();
// System.out.println("數(shù)據(jù)庫連接錯(cuò)誤");
System.exit(0);
}
}
}
運(yùn)行后衣摩,若出現(xiàn)以下內(nèi)容,則數(shù)據(jù)庫連接成功: