jdbc串連sql server

來源:互聯網
上載者:User

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();<br />String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb";<br />String user="sa";<br />String password="";<br />Connection conn=DriverManager.getConnection(url,user,password);<br />Statement stmt = conn.createStatement();<br />ResultSet rs = stmt.executeQuery(sql);<br />while(rs.next())<br />{<br /> System.out.println(rs.getString(1));//列印表的第一列<br />}

 

 

Java JDBC編程總結

文章分類:Java編程

Hibernate、TopLink等OR
Mapping操作資料庫的技術都是建立JDBC技術之上的,實際來說,他們的效能和JDBC是有很大差距的,但反過來說,如果JDBC用不好,還不如
hibernate呢。暫且不說這些孰優孰劣的話了,再次主要是對Java的基礎技術做個總結,以加深認識。

一、JDBC的基本原理

JDBC是Java操作資料庫的技術規範。他實際上定義了一組標準的操作資料庫的介面。為了能讓Java操作資料庫,必須要有實現了JDBC這些
介面的類,不同的資料庫廠商為了讓Java語言能操作自己的資料庫,都提供了對JDBC介面的實現--這些實現了JDBC介面的類打成一個jar包,就是
我們平時看到的資料庫驅動。由於不同的資料庫操作資料的機制不一樣,因此JDBC的具體實現也就千差萬別,但是你作為java程式員,你只和Java
JDBC的介面打交到,才不用理會他們怎麼實現的!呵呵,現在知道JDBC驅動是怎麼回事了。當然,這些類可以自己去寫--如果你很牛!

二、JDBC編程的步驟

為了說明這個步驟,假設你要通過java程式執行一個sql查詢,你需要按照如下的步驟去走:

1、建立指定資料庫的URL

這個URL實際上還是統一資源定位器,裡麵包含了一些串連資料庫的資訊:資料庫類型、連接埠、驅動類型、串連方式、資料庫伺服器的ip(或名字)、資料庫名(有的是別名)等。其格式如下:

jdbc:subProtocol:subName://DBserverIP:port/DatabaseName

例如mysql的一個url:jdbc:mysql://192.168.3.143:3306/zfvims

2、載入驅動類到JVM記憶體地區中

有兩種方法:

一種是用Class.forName()方法載入指定的驅動程式。

一種是將驅動程式添加到java.lang.System的屬性jdbc.drivers中。

最後說明一點,有時候添加到系統的CLASSPATH環境變數是不行的,原因是在使用JDBC介面操作資料庫前,JVM還沒有載入上驅動。

Class.forName("com.mysql.jdbc.Driver")

3、、通過DriverManager類管理驅動、建立資料庫連接。

DriverManager類作用於程式員和JDBC驅動程式之間,提供註冊管理驅動建立串連細節等方法,它所有成員均為靜態。通過其getConnection方法會建立一個JDBC Connection對象。

Connection conn=DriverManager.registerDriver("jdbc:mysql://192.168.3.143:3306/zfvims","lavasoft","password");

4、Connection類--資料庫連接

這裡所說的Connection類實際上是實現了JDBC的Connection介面的類,這個類一般都是jdbc驅動程式實現了。
Connection類表示了資料庫連接,通過其對象可以擷取一個擷取資料庫和表等資料庫物件的詳細資料。但更多的是通過這個串連更進一步去向資料庫發送
SQL語句去執行,下面會講到。

資料庫的串連的建立是很耗費資源和時間的,因此在不用串連的情況下要通過其close()方法將串連關閉,以釋放系統資源。

5、Statement類--發送並執行(靜態)SQL語句

通過Connection對象的createStatement()方法可以建立一個Statement對象,通過該對象的方法可以(發送)並執
行一個靜態sql語句。如果要執行動態sql(sql串中有參數),那麼就用PreparedStatement類,用法和Statement類似。

Statement stmt=con.createStatement()

6、ResultSet類--結果集

當你執行一條sql查詢後,就會產生一個查詢結果。ResultSet就表示資料庫結果集的資料表,通常通過執行查詢資料庫的語句產生。
ResultSet 對象具有指向其當前資料行的指標。通過ResultSet對象不但可以結果集資料,還可以擷取結果集表的列名、資料類型等資訊。

ResultSet rs=stmt.executeQuery(sql)

7、關閉資料庫連接

當對sql操作完成後,應該關閉資料庫連接,這樣避免因為串連未關閉而耗費系統資源,如果每次都不關閉,多次操作將建立多個串連,最終資料庫連接會達到最大限度,或者耗盡系統的資源,從而導致應用崩潰。因此要注意關閉資源,尤其是資料庫連接。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.