楊利榮
西安航空職業(yè)技術(shù)學(xué)院
基于SSH框架與jQuery技術(shù)的JavaWeb開發(fā)應(yīng)用
楊利榮
西安航空職業(yè)技術(shù)學(xué)院
SSH框架,即Struts2+Spring+Hibernate是目前JavaWeb開發(fā)中業(yè)界流行的一種開源框架技術(shù),能提高系統(tǒng)的可擴(kuò)展性和可維護(hù)性。但由于該結(jié)構(gòu)在工作運(yùn)行時(shí)會(huì)將Java代碼與HTML代碼混合在一起,因此給程序員造成了不便和困擾。本文即試從結(jié)合工作過(guò)程中所得到的實(shí)際經(jīng)驗(yàn)與理論知識(shí),基于SSH框架提出HTML+CSS+jQuery的表現(xiàn)層技術(shù),使網(wǎng)頁(yè)的內(nèi)容與功能形成分類,“各司其職”,以便系統(tǒng)結(jié)構(gòu)部分之間順利地完成協(xié)同工作,更好得實(shí)現(xiàn)Ajax效果。
SSH框架 jQuery技術(shù) JavaWeb開發(fā)應(yīng)用
隨著網(wǎng)絡(luò)通信以及計(jì)算機(jī)技術(shù)的不斷發(fā)展,基于SSH框架(即Struts2+Spring+Hibernate)的開源框架技術(shù)成為JavaWeb開發(fā)中的主流技術(shù)之一,極大的在簡(jiǎn)化網(wǎng)絡(luò)通信系統(tǒng)的開發(fā)過(guò)程的同時(shí)提高了系統(tǒng)的可擴(kuò)展性和可維護(hù)性。本文即對(duì)基于SSH框架與jQuery技術(shù)的JavaWeb開發(fā)展開了研究。
1.1 SSH框架概述
所謂SSH框架,指的是Struts2+Spring+Hibernate,它是基于輕量級(jí)框架技術(shù)而產(chǎn)生的Web主流應(yīng)用程序中的一個(gè)集成框架,主要分為表示層、邏輯層、數(shù)據(jù)層以及模塊層。運(yùn)行流程為:表示層主要完成數(shù)據(jù)的接受請(qǐng)求以及傳送響應(yīng)工作,最后送至Action處進(jìn)行處理;業(yè)務(wù)層將處理好的數(shù)據(jù)或者代碼進(jìn)行邏輯處理,是系統(tǒng)對(duì)數(shù)據(jù)識(shí)別變得更加清晰和準(zhǔn)確,并保證數(shù)據(jù)的完整性;持久層則依賴于Hibernate的對(duì)象化映射和數(shù)據(jù)庫(kù)交互,處理DAO組件請(qǐng)求的數(shù)據(jù),并返回處理結(jié)果;模塊層則在以上三者中協(xié)助運(yùn)行,保證系統(tǒng)運(yùn)行的流暢。
1.2 jQuery技術(shù)特點(diǎn)及概述
jQuery技術(shù),由John Resig所創(chuàng)建,該技術(shù)增強(qiáng)了JavaScript設(shè)計(jì)模式的靈活性和功能性。它除了具有獨(dú)特的鏈?zhǔn)秸Z(yǔ)法和短小清晰的多功能接口的特點(diǎn)外,還可以對(duì)CSS選擇其進(jìn)行擴(kuò)展,并可兼容各種主流瀏覽器,可以實(shí)現(xiàn)快速獲取文檔元素、提供HTML頁(yè)面動(dòng)態(tài)效果、創(chuàng)建AJAX無(wú)刷新網(wǎng)頁(yè)、增強(qiáng)事件處理等多種功能。
1.3 JavaWeb中的Ajax技術(shù)
Ajax并不是新研發(fā)的一種通信技術(shù),是基于一種全新的視角將傳統(tǒng)的JavaScript工具進(jìn)行替換,提出一種基于JavaScript的Web技術(shù)處理方案,通過(guò)為用戶提供無(wú)刷新的動(dòng)態(tài)數(shù)據(jù)交換等功能成功改善JavaScript復(fù)雜的文檔對(duì)象模型、不同的網(wǎng)頁(yè)瀏覽器以及冗雜的調(diào)試工具的缺點(diǎn),并加大程度的提升了用戶界面的更新速度,改善了用戶的使用體驗(yàn)。
2.1 HTML頁(yè)面代碼的設(shè)計(jì)及實(shí)現(xiàn)代碼
案例分析:假設(shè)在實(shí)際的開發(fā)過(guò)程中,前臺(tái)都由三部分構(gòu)成,即HTML頁(yè)面、CSS頁(yè)面以及jQuery頁(yè)面。以系統(tǒng)其中的注冊(cè)模塊為例,該模塊由一個(gè)三級(jí)級(jí)聯(lián)的模塊完成(即先選擇角色信息,再選擇地域信息,最后選擇詳細(xì)地域信息),這里用jQuery來(lái)實(shí)現(xiàn)Ajax效果,樣式文件如下:
2.2 jQuery代碼的設(shè)計(jì)及實(shí)現(xiàn)代碼
以下add.js的代碼。
$(function(){
disabledByRole();//當(dāng)頁(yè)面完成DOM加載后觸發(fā)disabledByRole()函數(shù)。
//獲取二級(jí)地域信息,該函數(shù)完成從后臺(tái)數(shù)據(jù)庫(kù)取出地域數(shù)據(jù)。
function getCityList(){
var url=“getCityList.a(chǎn)ction”:
//,獲取三級(jí)詳細(xì)地域信息,該函數(shù)根據(jù)二級(jí)地域信息的名稱來(lái)從數(shù)據(jù)庫(kù)獲取相應(yīng)的詳細(xì)數(shù)據(jù)信息。
function getCounly LislByCity(){
//根據(jù)一級(jí)信息的選擇來(lái)選擇相應(yīng)二級(jí)以及三級(jí)信息的數(shù)據(jù),除此之外,還可以進(jìn)一步在角色選擇頁(yè)面加入權(quán)限設(shè)置。
隨著科學(xué)技術(shù)的不斷發(fā)展,網(wǎng)絡(luò)通信技術(shù)也將日臻完善和成熟,更多更好的開源框架技術(shù)將會(huì)被逐漸的創(chuàng)建與開發(fā)出來(lái),本文是基于SSH框架來(lái)對(duì)jQuery技術(shù)進(jìn)行研究,并將其在框架內(nèi)的具體作用和功能進(jìn)行闡述和分析,從視圖層的角度上進(jìn)行闡述和分析,并未在邏輯層及業(yè)務(wù)層進(jìn)行深入的挖掘和探索,因而仍需要更多計(jì)算機(jī)領(lǐng)域的專家學(xué)者進(jìn)行調(diào)研論證,本文僅做拋磚引玉之用。
[1]李剛.truts2權(quán)威指南——基于WebWork核心的MVC開發(fā)[M].北京:電子工業(yè)出版社,2007:47—86
[2]孫衛(wèi)琴.精通Hibernate:Java對(duì)象持久化技術(shù)詳解[M]北京:電子工業(yè)出版社,2005:38-69
[3]單東林,張曉菲,魏然.鋒利的jQuery[M].北京:人民郵電出版社,2009:35-42
楊利榮,1979—,陜西華陰人,西安航空職業(yè)技術(shù)學(xué)院軟件技術(shù)專業(yè)教師。研究方向:JavaWeb開發(fā)、Android應(yīng)用開發(fā)。