數據庫 —— 應用程序與數據庫的連接


目錄
  1. ODBC 與 JDBC 是什么?
  2. 具體實例入門
1、ODBC 與 JDBC 是什么?[Link]

JDBC, 全稱為Java DataBase Connectivity standard, 它是一個面向對象的應用程序接口(API), 通過它可訪問各類關系數據庫。JDBC也是java核心類庫的一部分。

JDBC的最大特點是它獨立於具體的關系數據庫。與ODBC (Open Database Connectivity)類似, JDBC API 中定義了一些Java類分別用來表示與數據庫的連接(connections), SQL語句(SQL statements), 結果集(result sets)以及其它的數據庫對象, 使得Java程序能方便地與數據庫交互並處理所得的結果。使用JDBC, 所有Java程序(包括Java applications , applets和servlet)都能通過SQL語句或存儲在數據庫中的過程(stored procedures)來存取數據庫。

要通過JDBC來存取某一特定的數據庫,必須有相應的JDBC driver,它往往是由生產數據庫的廠家提供,是連接JDBC API與具體數據庫之間的橋梁。

通常,Java程序首先使用JDBC API來與JDBC Driver Manager交互,由JDBC Driver Manager載入指定的JDBC drivers, 以后就可以通過JDBC API來存取數據庫。

ODBC(Open Database Connectivity,開放數據庫互連)是微軟公司開放服務結構(WOSA,Windows Open Services Architecture)中有關數據庫的一個組成部分,它建立了一組規范,並提供了一組對數據庫訪問的標准API(應用程序編程接口)。這些API利用SQL來完成其大部分任務。ODBC本身也提供了對SQL語言的支持,用戶可以直接將SQL語句送給ODBC。 

一個基於ODBC的應用程序對數據庫的操作不依賴任何DBMS,不直接與DBMS打交道,所有的數據庫操作由對應的DBMS的ODBC驅動程序完成。也就是說,不論是FoxPro、Access還是Oracle數據庫,均可用ODBC API進行訪問。由此可見,ODBC的最大優點是能以統一的方式處理所有的數據庫。 

 

2、具體實例入門

這里提供一個具體的例子,step by step ,為剛剛接觸數據庫的人提供一個更為直觀感性的認識。

我們具體使用 java應用程序連接 mysql 數據庫,整體步驟如下:

1、java 開發環境的准備
2、安裝 java IDE以便開發 (如 Eclipse )
3、安裝 mysql 數據庫
4、下載 數據庫對應的 jdbc driver
5、將 jdbc driver 庫導入到程序環境中
6、連接測試 

1、java 開發環境的准備:配置java開發環境——JDK的配置。 步驟網上很多比如:點這里

2、搜索下載合適你系統(64bit/32bit)的IDE, 比如 Eclipse :點這里去搜索

3、下載並安裝mysql數據庫,各個平台官方下載與安裝教程 

  按照安裝教程,設置好默認用戶(root)的密碼,安裝完畢后,可以打開終端命令行登錄數據庫:(更加具體的使用,請訪問 官方使用手冊 )

mysql -u root -p

      創建待會要測試的數據庫, 並創建要測試的表:

create database test;
use test;
create table temp(name varchar(20), password varchar(20));

這時應該可以使用語句查看到你的表了:

show tables;     // 查看當前數據庫所有的表
describe temp;  // 查看表的具體字段信息

select * from temp;  // 查看表的數據

4、下載mysql 提供的 jdbc driver ,點這里 ( Windows下載 (mysql-connector-java-5.1.40.zip) Linux下載: (mysql-connector-java-5.1.40.tar.gz))

     下載好后解壓,任意路徑都可以,不要以后隨便給刪掉就可以。

5、將jdbc driver 庫導入到Eclipse 環境中

    1)在 Eclipse 中建立用戶庫(以后不同的項目,要連接數據庫,直接為工程加入這個用戶庫就好了):

   打開Eclipse,進入菜單windows->prefrences,進入Java->Build Path->user libraries,選擇新建,命名為mysql,路徑為:.../mysql-connector-java-5.X.XX-bin.jar

  2) 創建java project,命名為testmysql,右鍵項目名稱,選擇Build Path->Add libraries,從列表中選擇user library,在next界面中選擇上面部署的mysql安裝包即可;

6、現在可以開始寫代碼連接剛才的數據庫了。在testmysql工程下新建class,命名為Test.java文件:

public class Test {

    public static void main(String args[]) {
        try {
            Class.forName("com.mysql.jdbc.Driver"); // 加載MYSQL JDBC驅動程序
            System.out.println("Success loading Mysql Driver!");
        } catch (Exception e) {
            System.out.print("Error loading Mysql Driver!");
            e.printStackTrace();
        }
        try {
            Connection connect = DriverManager.getConnection(
                    "jdbc:mysql://localhost:3306/test", "root", "XXXXXXX"); //test 為你的數據庫名稱,XXXXXXX 這里改為你自己的密碼
            System.out.println("Success connect Mysql server!");
            
       //插入一行數據 PreparedStatement Statement
= connect .prepareStatement("INSERT INTO temp(name,password) VALUES(?,?)"); Statement.setString(1, "name3"); Statement.setString(2, "password3"); Statement.executeUpdate(); // 獲取temp表的數據來打印 Statement stmt = connect.createStatement(); ResultSet rs = stmt.executeQuery("select * from temp");// temp 為表的名稱 System.out.println("query result:"); while (rs.next()) { System.out.println(rs.getString("name")+" :"+rs.getString("password") ); } } catch (Exception e) { System.out.print("get data error!"); e.printStackTrace(); } } }

運行程序,執行完畢后查看數據庫,此時應該可以看到:

mysql> select * from temp;
+-------+-----------+
| name  | password  |
+-------+-----------+
| name3 | password3 |
+-------+-----------+
1 row in set (0.00 sec)

 

到這里,例子就講完了,希望對初學者有所幫助 :)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM