歐陽桂秀
為了使Java編寫的程序不依賴于具體的數(shù)據(jù)庫,Java提供了專門用于操作數(shù)據(jù)庫的JDBC(Java Data Base Connectivity),JDBC提供了一些標準應用程序接口(API)。它有一組用Java語言編寫的類和接口組成。通過使用JDBC API,用戶可以使用完全相同的Java語法訪問各種SQL數(shù)據(jù)庫。
本文重點介紹圖形用戶界面的Java應用程序(學生成績管理系統(tǒng))連接MySQL數(shù)據(jù)庫,對MySQL數(shù)據(jù)庫中的數(shù)據(jù)實現(xiàn)增加、修改、刪除和查詢等操作。
數(shù)據(jù)庫名是test2,其中存放學生成績的數(shù)據(jù)表是student,student表的字段是number、name、Java、MySQL和Android,如圖1所示。
圖1 student表
要通過JDBC訪問MySQL,需要下載JDBC驅(qū)動程序。MySQL驅(qū)動程序可以在MySQL官方網(wǎng)站下載,下載地址為:http://dev.mysql.com/downloads/connector/j/,解壓后得到 jar 庫文件,然后在對應的項目中導入該庫文件。本文使用的jar 庫文件是mysql-connector-java-5.1.39-bin.jar
本文使用的Java IDE是Eclipse,導入jar包的步驟如下:
1)復制該jar包到對應的項目下:
在該項目上(例如,項目名為one)單擊鼠標右鍵,New→Folder。在彈出窗口將Folder name命名為lib_jar(可以是其它名),點擊“finish”按鈕,如圖2所示。
圖2 新建一個Folder
2)然后,將MySQL的jar包復制到lib_jar中。位置如圖3所示:
圖3 將jar包復制到lib_jar
3)選中需要添加到項目中的jar包,單擊鼠標右鍵,Build Path→Add to Build Path。這樣jar包就成功導入到項目中了,如圖4所示。
圖4 jar包導入到項目中
學生成績管理系統(tǒng),圖形用戶界面的Java應用程序?qū)ySQL數(shù)據(jù)庫中的數(shù)據(jù)進行增刪改查等操作,如圖5所示。
圖5 學生成績管理系統(tǒng)
首先啟動MySQL數(shù)據(jù)庫服務器。
然后,運行Java應用程序,單擊圖5的“瀏覽”按鈕,出現(xiàn)圖6所示新的窗口:
圖6 瀏覽學生成績
圖6與圖1所示MySQL數(shù)據(jù)庫的student表中記錄一致,說明Java連接MySQL數(shù)據(jù)庫成功。
主要代碼如下:
3.3.1 增加數(shù)據(jù)
圖7 添加學生成績
圖7的界面上,能輸入具體學號、姓名等的五個文本框,對應代碼如下:
與數(shù)據(jù)庫連接,插入記錄的關(guān)鍵代碼如下:
prepared_statement.setString(1,jtnumber.getText());//設(shè)置第一個?代表的值。這個值,是從Java圖形用戶界面的第一個文本框獲得(具體的學號)。
prepared_statement.setString(2,jtname.getText());//設(shè)置第二個?代表的值。這個值,是從Java圖形用戶界面的第二個文本框獲得(具體的姓名)。
prepared_statement.setString(3,jtJava.getText());//設(shè)置第三個?代表的值。這個值,是從Java圖形用戶界面的第三個文本框獲得(具體的Java成績)。
prepared_statement.setString(4,jtMySQL.getText());//設(shè)置第四個?代表的值。這個值,是從Java圖形用戶界面的第四個文本框獲得(具體的MySQL成績)。
prepared_statement.setString(5,jtAndroid.getText());//設(shè)置第五個?代表的值。這個值,是從Java圖形用戶界面的第五個文本框獲得(具體的Android成績)。
prepared_statement.executeUpdate();//執(zhí)行更新,把記錄插入到MySQL數(shù)據(jù)庫的student表中。
輸入成績后,單擊圖7的“添加”按鈕,可以把新的記錄添加到MySQL數(shù)據(jù)庫,如圖8所示。
圖8 具體添加的學生成績
然后,單擊圖5所示的“瀏覽”按鈕,可以看到剛才的記錄已經(jīng)添加到數(shù)據(jù)庫中。如圖9所示。
圖9 瀏覽學生成績
3.3.2 修改數(shù)據(jù)
界面類似增加數(shù)據(jù),如圖10所示。
圖10 修改學生成績
與數(shù)據(jù)庫連接,修改記錄的關(guān)鍵代碼如下:
3.3.3 查詢數(shù)據(jù)(如圖11所示)
圖11 查詢學生成績
與數(shù)據(jù)庫連接,查詢記錄的關(guān)鍵代碼如下:
在圖11,輸入學號“2”,然后單擊“查詢”按鈕,就可以看到查詢結(jié)果,如圖12所示。
圖12 查詢到的學生成績
3.3.4 刪除數(shù)據(jù)(如圖13)
圖13 刪除學生成績
與數(shù)據(jù)庫連接,刪除記錄的關(guān)鍵代碼如下:
在圖13,輸入具體的學號“4”,然后單擊“刪除”按鈕,就可以刪除該學生的成績,如圖14所示。
圖14 刪除具體學生的成績
然后,單擊圖5的“瀏覽”按鈕,可以看到學號為4的學生記錄確實被刪除了,如圖15所示。
圖15 刪除一條記錄后
JDBC為Java程序訪問數(shù)據(jù)庫提供了接口。通過介紹學生成績管理系統(tǒng),詳細講解了圖形用戶界面的Java應用程序怎樣連接MySQL數(shù)據(jù)庫,如何對MySQL數(shù)據(jù)庫中的數(shù)據(jù)進行增加、修改、刪除和查詢等操作。