加快JDBC中JSP數(shù)據(jù)庫的訪問速度_JSP教程
推薦:簡介jsp上傳組件smartuploadjsp對上傳文件的支持不象php中支持的那么好,直接做成了函數(shù),也不象asp中要通過組件才能實(shí)現(xiàn)。jsp中可以通過javabean來實(shí)現(xiàn)。但是我們沒有必要自己去寫一個上載的bean,在網(wǎng)上已經(jīng)有了很多成型的技術(shù),smartupload就是其中的一個。但是smartupload是將文件先
JSP程序都是模塊,并且具有強(qiáng)大的表達(dá)-請求(divsentation-request)功能。網(wǎng)頁圖標(biāo)素材
建立一個完美的數(shù)據(jù)庫訪問是一個具有挑戰(zhàn)的過程,而JDBC接口能夠很好地完成這一過程。平面設(shè)計(jì)視頻教程
然而,嵌入于JSP代碼中的JDBC代碼,與SQL命令嵌入在JDBC一樣,可以充分利用JSP的功能,為客戶端建立一個整潔而簡便的API。為了達(dá)到這一目的,我們可以考慮到使用JSP操作來建立數(shù)據(jù)庫接口組件。
完美的JSP設(shè)計(jì)模式是Model-View-Controller (MVC)。傳統(tǒng)三層體系為:Model為程序邏輯和數(shù)據(jù);View為查看;以及Controller為請求處理。遵循這一模型,一個JSP程序包含客戶端-服務(wù)器“對話框”的每一“行”的頁面。在一個典型的程序中,你可以看到一個查詢頁面,一個驗(yàn)證頁面,一個數(shù)據(jù)庫插入頁面,一個數(shù)據(jù)庫更新頁面,等等。
JDBC設(shè)計(jì)的JSP操作
JSP數(shù)據(jù)庫操作的另一方法是,在不使用JDBC的情況下為數(shù)據(jù)庫建立一些操作的集合。使用這種方法,你可以得到兩種好處:
第一,你可以消除使用JDBC的必要,這就使得很多工作得以簡化;
第二,你的設(shè)計(jì)和代碼的組織更加合理(比如可讀性,靈活性,以及可維護(hù)性)。
你仍然需要一些驅(qū)動程序,但你首先簡化以上的操作。JSP程序中的操作都是一些邏輯塊,通常被其它的JSP程序開發(fā)者編寫和利用,但你可以把它們當(dāng)成子程序來使用。使用JSP操作的意義是標(biāo)準(zhǔn)化某些功能,以及最大程度地減少嵌入在JSP的Java代碼數(shù)量。
JSP提供了一套標(biāo)準(zhǔn)擴(kuò)展的類。通過這些類,你可以通過一個標(biāo)簽管理器器(tag handler)定義一個操作。這里有兩個JSP定義的Java接口:Tag接口和BodyTag接口,分別是由TagSupport類和BodyTagSupport類執(zhí)行。
你可以建立通用JSP用途的一個標(biāo)簽庫,并且你也可以執(zhí)行標(biāo)簽管理器(tag handler)以擴(kuò)展類的支持。以下是實(shí)現(xiàn)這些過程的步驟。
首先,執(zhí)行一個標(biāo)簽管理器的類:
packagecom.myactions;
(importstatementsgohere)
publicclassMyActionTagextendsTagSupport{
...
}
接著,編譯這段代碼,并將類文件放置在程序的類庫中。然后,你將需要一個Tag Library Descriptor (TLD)文件,這是一個XML文件,以匹配你的操作名稱和相應(yīng)的標(biāo)簽管理器的類。
MyAction
com.myactions.MyActionTag
(whatever)
myData
相關(guān)的Trialware
.DbUtils (Apache Software Foundation)
.IBM Informix JDBC Driver (IBM)
.MySQL Connector/J 3.0 (MySQL AB)
.SQL4X Manager J 2.2 (MacosGuru)
.Informix Downloads (IBM Red Brick Warehouse 32bit) (Solaris) (IBM)
.Informix Downloads (IBM Red Brick Warehouse 64bit) (HPUX) (IBM)
更多Trialware
假設(shè)你已經(jīng)建立一個名為MyAction的操作,這是一個與com.myactions.MyActionTag類匹配的TLD。TLD文件必須位于程序的TLDs路徑。
當(dāng)你從一個JSP頁調(diào)用操作時(shí),TLD告訴JSP正確的類以使用操作。這就帶來極大的方便,而且只需要少量的代碼。
但是,從何引入SQL?首先,你需要建立具有連接功能的數(shù)據(jù)庫訪問。你可以使用javax接口來完成,而javax可見于JDBC 2.0 Optional工具箱。JDBC 2.0的javax.sql.DataSource類提供了你所需要的連接。
此時(shí),SQL位于什么地方?它在bean中。你可以使用JDBCcreateStatement和PreparedStatement在bean中建立一個方法。將這一方法成為一個公共的Vector,并正確地將你的SQL聲明傳遞到這一方法。
總結(jié)
你的數(shù)據(jù)庫bean執(zhí)行一個嵌入在操作體的SQL語句,你可以傳遞一個語句給SQL語句,或者使用它來執(zhí)行一個預(yù)先的操作�?梢酝ㄟ^標(biāo)簽管理器來執(zhí)行你的操作。由于JDBC被嵌入于庫代碼中,你將不能在JSP程序中明確地使用它。
初次使用這種方法會覺得它比JDBC中的嵌入SQL,以及JSP中的嵌入JDBC更加復(fù)雜,但是,你建立SQL操作并將它們存放在一個TLD,你只需做一次,在所有的JSP程序中就可以訪問這些操作。這就是這種方法的優(yōu)點(diǎn)。
分享:揭秘幾種java獲取當(dāng)前路徑的方法1、利用System.getProperty()函數(shù)獲取當(dāng)前路徑: System.out.println (System.getProperty(user.dir));// user.dir指定了當(dāng)前的路徑 2、使用File提供的函數(shù)獲取當(dāng)前路徑: Filedirectory=newFile();//設(shè)定為當(dāng)前文件夾 try{ System.out.println( director
- jsp response.sendRedirect不跳轉(zhuǎn)的原因分析及解決
- JSP指令元素(page指令/include指令/taglib指令)復(fù)習(xí)整理
- JSP腳本元素和注釋復(fù)習(xí)總結(jié)示例
- JSP FusionCharts Free顯示圖表 具體實(shí)現(xiàn)
- 網(wǎng)頁模板:關(guān)于jsp頁面使用jstl的異常分析
- JSP頁面中文傳遞參數(shù)使用escape編碼
- 基于jsp:included的使用與jsp:param亂碼的解決方法
- Java Web項(xiàng)目中連接Access數(shù)據(jù)庫的配置方法
- JDBC連接Access數(shù)據(jù)庫的幾種方式介紹
- 網(wǎng)站圖片路徑的問題:絕對路徑/虛擬路徑
- (jsp/html)網(wǎng)頁上嵌入播放器(常用播放器代碼整理)
- jsp下顯示中文文件名及絕對路徑下的圖片解決方法
JSP教程Rss訂閱編程教程搜索
JSP教程推薦
- jsp重定向地址欄不改變的實(shí)例
- Java:Web實(shí)現(xiàn)定時(shí)任務(wù)的簡便方法
- json實(shí)現(xiàn)jsp分頁實(shí)例介紹(附效果圖)
- 高性能、高彈性JSP和Servlet性能優(yōu)化
- Apache FileUpload的兩種上傳方式介紹及應(yīng)用
- JSP教程tomcat配置數(shù)據(jù)庫連接池
- 網(wǎng)頁模板:關(guān)于jsp頁面使用jstl的異常分析
- JSP由淺入深4—— Scriptlets
- ajax+json+Struts2實(shí)現(xiàn)list傳遞實(shí)例講解
- 解讀Struts+Spring+Hibernate基礎(chǔ)教程
- 相關(guān)鏈接:
- 教程說明:
JSP教程-加快JDBC中JSP數(shù)據(jù)庫的訪問速度
。