999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于JDBC的數據庫訪問技術的實現

2010-09-07 10:40:16范群星
太原城市職業技術學院學報 2010年7期
關鍵詞:數據庫標準

范群星

(山西交通職業技術學院,山西 太原 030031)

基于JDBC的數據庫訪問技術的實現

范群星

(山西交通職業技術學院,山西 太原 030031)

為了避免應用對數據庫的依賴性過強,使應用適用于不同的DBMS,JDBC數據庫連接標準為Java應用程序提供了統一的API接口,可以很容易地把SQL語句傳送到任何關系型數據庫中。論文介紹了多種訪問數據庫的接口標準,并進行了比較,同時使用簡單實例演示了JDBC連接數據庫的過程。

SQL;API;ODBC;JDB;UDA

一、訪問數據庫的接口標準

數據庫向用戶提供的數據查詢語言SQL是標準的,但這并不意味著數據庫對應用提供的API(Application Program Interface)也是標準的。從應用開發的角度看,各個數據庫產品生產商向程序提供的API接口差異還是比較大的,因此,選擇適應性更強的數據庫連接標準顯得非常重要。

1.開放數據庫連接標準(Open Data Base Connectivity,ODBC)

ODBC由Microsoft公司提供,定義了數據庫訪問的應用程序接口,即API接口。ODBC的目的是屏蔽各種數據庫存取API接口的差異,為訪問數據庫的應用程序提供了一致的接口。應用程序可以通過稱為ODBC驅動程序的不同的數據庫引擎訪問不同的數據庫管理系統。

2.Java數據庫連接標準(Java DataBase Connectivity, JDBC)

JDBC和ODBC類似,它為Java應用程序提供了統一的API接口。JDBC包括兩個基本部分:一部分是面向開發人員的JDBCAPI,其作用是為程序員提供不同的數據庫連接方式;另一部分是JDBC驅動程序,它可以建立在ODBC基礎上,即程序對JDBC的訪問先轉換為對ODBC的調用,然后利用ODBC完成數據庫訪問;JDBC也可以直接與數據庫連接。目前幾乎所有的應用服務器都為Java程序提供JDBC接口。

3.統一數據存取標準(Universal Data Access,UDA)

UDA是Microsoft公司提出的一種標準,它也力圖為應用程序給出一個統一的API接口,其特點在于它針對的數據源不僅僅局限于關系數據庫,而且可以是非關系型的數據文件、圖形圖像等。在UDA機制中,應用程序通過ADO(Advanced Data Object)接口訪問數據,而ADO可通過OLE DB訪問非關系型的數據或者通過ODBC驅動程序訪問不同的數據庫。

二、JDBC與ODBC及與UDA的比較

1.Java不能直接使用ODBC

因為ODBC使用C語言接口,如果讓Java來調用本機C代碼的話,那會在安全、屬性、應用的可移植性等方面帶來困難。

2.通過JDBC,可直接把ODBC翻譯成具有Java風格的面向對象的接口

例如,ODBC使用了大量的易于出錯的指針,而Java取消了這種不安全的指針,無須逐字翻譯。

3.JDBC的Java API提供“純Java”的解決辦法

當使用ODBC時,ODBC驅動器管理程序與驅動器必須手工地裝入到每架客戶機上。而JDBC驅動器全部是用Java編寫的,JDBC代碼則在所有Java平臺 (從網絡計算機到主機)上都可自動安裝,并且是可移植的和安全的。

4.UDA的應用不夠廣泛

UDA雖然提供了對不同數據源的一致的存取方式,但是遺憾的是,UDA機制目前除了在Microsoft的產品中有深入應用外,其他IT廠商在產品方面的支持并不非常廣泛。

三、使用JDBC連接數據庫實例

該實例使用的數據庫管理系統是MySQL,JSP容器是Tomcat 6.0,使用的MySQL版本是mysq1-6.0.11-alpha,Tomcat的版本是apache-tomcat-6.0.18。將兩個軟件分別進行安裝、配置及測試。

1.準備數據庫驅動程序和數據庫

(1)準備數據庫驅動程序

要使用JDBC連接數據庫,JDBC數據庫驅動程序是必不可少的,它是數據庫和Java編程語言的接口,這里所使用的數據庫驅動程序是mysq1-connector-java-5.1.10,將從 MySQL官方網站(http://www.mysql. com)上下載的壓縮包(mysql-connector-java-5.1.10.zip)解壓縮到本地硬盤,然后將解壓目錄下的mysql-connector-java-5.1.10-bi n.j a r文件復制到 <TOMCAT_HOME>/lib目錄下。

(2)準備數據庫

新建名為jdbctestdb的數據庫,并在其下建立一個名為animalInfo的表,表中各數據字段如表1所示,并在表中添加如下的數據,如表2所示。

表1 animalInfo數據表的數據字段

表2 animalInofo數據表的數據

2.編寫訪問數據庫的JSP文件

上述工作準備完成后就可以編寫訪問數據庫的代碼了。

在該例中,要實現的功能就是把數據庫中的數據查詢出來并在頁面上顯示,將以下JSP文件代碼保存到jdbc.jsp文件中:

3.發布訪問數據庫的Web應用

首先,在<TOMCAT_HOME>/webapps目錄下新建一個 JDBCFirst文件夾,在該文件夾下創建目錄WEB-INF,并在WEB-INF下創建目錄classes和文件web.xml。web.xml的代碼如下:

其次,將 jdbc.jsp文件和數據庫驅動程序mysql-connector-java-5.1.10.zip解壓目錄下的src文件夾復制到JDBCFirst目錄下。

最后,啟動Tomcat,然后在瀏覽器地址欄中輸入如下地址:http://localhost:8080/JDBCFirst/jdbc.jsp,可以看到顯示結果。

四、結束語

1.Java數據庫連接(JDBC)由一組用Java編程語言編寫的類和接口組成。JDBC為工具/數據庫開發人員提供了一個標準的API,使他們能夠用純Java API來編寫數據庫應用程序,并支持將SQL語句發送到相應的任何一種關系型數據庫,從而實現與數據庫的連接。

2.由于在配置MYSQL服務器時,已經將其字符集設置為gb2312,而JSP文件也使用gb2312編碼,所以在顯示字符串內容時,不需要進行字符集的轉換。否則就需要在顯示內容的語句中使用<%=new String(rs. getString(“XXXX”).getBytes(“ISO8859-1”),”gb2312”)%>這樣的語句進行字符集的轉換,以使數據能正常顯示。

3.如果在運行時提示javax.servlet.ServletException: com.mysql.jdbc.Driver或java.lang.ClassNot FoundException:com.mysql.jdbc.Driver錯誤,請確保已經正確安裝了數據庫驅動程序。

4.直接在命令提示符下進行mysql數據庫的操作比較復雜,如果使用mysql提供的mysqldump工具實現的話,就容易且方便得多。

[1]劉軍,馬敏書.電子商務系統的分析與設計[M].北京:高等教育出版社,2008:286-295.

[2]鄭彥孚.MySQL的JDBC編程實例[J].電腦開發及應用,2007,(1):58-63.

[3]樊新華,孟鉑.基于JDBC的通用的訪問數據庫方法[J].電腦知識與技術,2008,(7):1545-1546,1554.

[4]張作宸.JDBC原理及操縱數據庫方法[J].科技信息,2009,(2):490.

[5]童少娟.淺談Java數據庫連接[J].中國校外教育,2009,(7):168.

[6]郭廣軍,陳代武,胡玉平,李芝城.基于JDBC的數據庫訪問技術的研究[J].南華大學學報(自然科學版),2005,(6):50-54,57.

TP

A

1673-0046(2010)7-0174-03

猜你喜歡
數據庫標準
2022 年3 月實施的工程建設標準
忠誠的標準
當代陜西(2019年8期)2019-05-09 02:22:48
美還是丑?
你可能還在被不靠譜的對比度標準忽悠
數據庫
財經(2017年15期)2017-07-03 22:40:49
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
一家之言:新標準將解決快遞業“成長中的煩惱”
專用汽車(2016年4期)2016-03-01 04:13:43
數據庫
財經(2016年6期)2016-02-24 07:41:51
主站蜘蛛池模板: 鲁鲁鲁爽爽爽在线视频观看| 欧美一级专区免费大片| 日韩国产高清无码| 免费又爽又刺激高潮网址 | 成人免费一区二区三区| 九月婷婷亚洲综合在线| 国产三级成人| 国产精品99久久久| 日韩黄色精品| 日韩成人午夜| 欧美一区二区丝袜高跟鞋| 亚洲无码视频一区二区三区 | 2021精品国产自在现线看| 亚洲高清日韩heyzo| 欧美在线中文字幕| 亚洲系列无码专区偷窥无码| 9999在线视频| 久久天天躁狠狠躁夜夜2020一| 免费a级毛片18以上观看精品| 亚洲国产日韩一区| 国产杨幂丝袜av在线播放| 真人高潮娇喘嗯啊在线观看| 亚洲色无码专线精品观看| 国产精品播放| 国产真实乱人视频| 欧美高清国产| 久久精品无码一区二区国产区| 国产一区二区色淫影院| 天天综合网色| 国产国产人成免费视频77777 | 尤物精品视频一区二区三区| 国产精品成人一区二区不卡| 激情无码视频在线看| 久久国产精品嫖妓| 国产国语一级毛片在线视频| 久久精品国产精品一区二区| 亚洲乱强伦| 亚洲AⅤ无码国产精品| 国产欧美精品午夜在线播放| 男人天堂伊人网| 国产成人av一区二区三区| 欧美高清视频一区二区三区| 国产97视频在线观看| 中文一级毛片| 亚洲综合天堂网| 欧美午夜一区| 亚洲国语自产一区第二页| 性网站在线观看| 中文字幕在线视频免费| 青草91视频免费观看| 波多野结衣第一页| 青草国产在线视频| 人妻少妇乱子伦精品无码专区毛片| 国产免费久久精品99re丫丫一| 国产视频一二三区| 亚洲一级色| 91精品国产综合久久香蕉922| 国产va在线观看免费| 自偷自拍三级全三级视频| 国产精品亚洲综合久久小说| 无码AV动漫| 最新国产午夜精品视频成人| 免费黄色国产视频| 精品一区二区三区自慰喷水| 亚洲第一天堂无码专区| 精品国产中文一级毛片在线看| 日本不卡在线播放| 91口爆吞精国产对白第三集| 99精品国产自在现线观看| 99中文字幕亚洲一区二区| 国产小视频在线高清播放| 久久婷婷五月综合色一区二区| 日本精品视频| 露脸国产精品自产在线播| 四虎永久免费网站| 久久精品国产91久久综合麻豆自制| 伊人91在线| 欧美在线综合视频| 国产在线观看99| 国产69囗曝护士吞精在线视频| 国产一区亚洲一区| 91久久国产综合精品|