JDBC鏈接數據庫的步驟
此文列出了JDBC鏈接數據庫的4個步驟,供大家參考下:
幾個步驟:1.加載驅動類;
2.與數據庫建立連接;
3.執行SQL語句
4.處理結果集
5.關閉連接
1. 第一步:加載驅動類:
需要注意:不同的數據庫,參照的字符串不同,ORACLE的連接為:ame("leDriver"); 這一步執行後,程序可能會拋出: ClassNotFoundException,原因一般有:
a. 數據庫的驅動jar包沒有導入到環境變量中
b. ame中的字符串拼寫不正確
2. 第二步:通過DriverManager與數據庫建立連接:
其靜態方法getConnection用來獲取連接。通常需要傳入三個參數
參數1:數據庫的地址及端口(不同數據庫字符串內容不相同)
oracle的地址:jdbc:oracle:thin:@host:port:sid
參數2:數據庫的用户名
參數3:數據庫對應用户名的密碼
Connection conn = onnect
("jdbc:oracle:thin:@host:port:oracle","user", "psd");
3.第三步:ement 執行SQL語句並獲取結果
Statement state = teStatement();
String sql="/*這裏面是SQL語句*/ ";
Statement針對不同的SQL語句提供了不同的執行方法:
ResultSet executeQuery(String sql)
* 該方法專門用來執行DQL語句,返回的ResultSet表示查詢出來的結果集
int executeUpdate(String sql)
* 該方法專門用來執行DML語句,返回的數字表示執行該語句影響了表中多少條數據
boolean execute(String sql)
* 該方法理論上什麼語句都可以執行了,但是由於DQL,DML都有專門的方法執行了,所以該方法通常用來執行DDL語句
ResultSet rs = uteQuery(sql);
輸出查詢結果:while(())
{ 輸出語句 }
ResultSet提供用於遍歷結果集的方法:
boolean next()
*該方法有兩個作用,首先當我們查詢出結果集後rs的`指針指向第一條數據之上,所以我們需要先調用一次next()使其指針移動到第一條數據上並表示該條數據。
第二個作用是看返回值,若指針向下移動後,發現沒有數據了,會返回false,若有則返回true,所以我們只有在該方法返回true的情況下才獲取當前記錄的各個字段對應的值RS還提供了若干個getXXX(String fieldName)方法:
*這一系列方法是用來獲取RS表示的當前記錄中給定字段對應的值。不同的字段由於類型不同需要調用相對應的方法
第4步:關閉連接,寫在finally塊中
finally{if(conn!=null){try {e();} catch (SQLException e) {tStackTrace();}}}
將數據庫的連接放在一個工具類裏面,達到重用的效果
由於訪問數據庫是經常要用到的操作,所以在工程中,通常編寫一個訪問數據庫的工具類,此後所有訪問數據庫的操作,都從工具類中獲取連接,實現工具類的兩種方式:
1.直接把數據配置寫在工具類DBUtil中
2.把數據庫配置寫在一個properties屬性文件裏,工具類讀入屬性文件,逐行獲取數據庫參數(一般使用第二種)
若使用第一種方法,在後期需要修改所使用的數據庫或者説修改host、端口、數據庫連接名、密碼等等時,就需要修改源代碼裏面的數據,不便於系統的維護,故一般使用第二種方法數據庫連接工具類以及連接池的主要步驟:
Properties prop = new Properties();(new FileInputStream("erties"));//根據配置項初始化String driverName = roperty("driverName");String url = roperty("url");String username = roperty("username");String password = roperty("password");//最大連接數int maxActive = eInt(roperty("maxActive"));//最大等待時間int maxWait = eInt(roperty("maxWait"));//初始化連接池cp = new BasicDataSource();//相當與是ame()中的內容riverClassName(driverName);rl(url);sername(username);assword(password);axActive(maxActive);axWait(maxWait);public static Connection getConnection() throws Exception{return onnection();}
以上內容是針對JDBC鏈接數據庫的步驟做講解,希望能夠幫助到大家!
-
學生評語管理系統概述
學生評語管理系統概述1.引言學生的操行評語是學生一個學期以來各方面表現的總結,對學生總結過去,確定今後的努力方向起着很重要的作用。因此一個個性化、智能化的學生評語編輯軟件是很必要的。它不但可以減輕辦主任的工作負擔,迅速的寫出評語,還可以方便的管理學...
-
調整數據庫表中自動編號的方法
方法一:刪個那個自動編號的字段,再建一個同樣的自動編號字段即可。方法二:自動編號是一直增加的(每次都加1),你再增加一條記錄它的編號會在前面的基礎上加1(刪除的也算),如果你編號為1的.記錄被刪除了,你想再要從1開始,可以打開Access數據庫,選擇工具,再選擇數據庫實用...
-
列車車輛制動系統圖解
列車制動指人為地制止列車的運動,包括使它減速、不加速或停止運行。以下是小編為大家精心整理的列車車輛制動系統圖解,歡迎大家閲讀。原理由制動裝置產生的與列車運行方向相反的外力,稱為“制動力”。這是人為的阻力。由於行車安全的需要,制動力比在列車運行中由自...
-
數據庫技術信息的管理論文
一、信息管理中計算機數據庫技術的運用建議(一)增強數據的完整性。在數據庫運行過程中,最基本的要求就是數據的完整、準確。數據是數據庫的主要內容,數據的完整是保證數據庫順利運行的基礎條件,用户在編制信息時候儘量編輯完整信息,這樣數據庫才有更高的價值,信息管理...