国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

Struts Tiles在NCRE網(wǎng)上報(bào)名系統(tǒng)中的應(yīng)用

2010-03-12 10:41王競(jìng)趙強(qiáng)耿偉
中國新技術(shù)新產(chǎn)品 2010年16期
關(guān)鍵詞:界面設(shè)計(jì)菜單頁面

王競(jìng) 趙強(qiáng) 耿偉

(徐州醫(yī)學(xué)院,江蘇 徐州 221004)

1 引言

Java Web技術(shù)由于其良好的可移植性和安全性得到了廣泛的應(yīng)用;而Struts框架在Java Web應(yīng)用的開發(fā)中有相當(dāng)大的用戶群,它已經(jīng)成為最受歡迎的Java Web MVC模式框架。Struts對(duì)視圖層提供了豐富的標(biāo)簽,這讓開發(fā)者只需使用少數(shù)的標(biāo)簽,就可以實(shí)現(xiàn)需要較多HTML標(biāo)記語言、腳本語言甚至是Java語言才能實(shí)現(xiàn)的界面功能。

全國計(jì)算機(jī)等級(jí)考試(National Computer Rank Examination,簡(jiǎn)稱NCRE)自1994年開考以來,考生人數(shù)逐年遞增。使用NCRE原有的C/S模式的考務(wù)系統(tǒng)進(jìn)行報(bào)名,工作效率低下。當(dāng)前,Internet的使用已經(jīng)非常普遍。充分利用網(wǎng)絡(luò)資源,改變傳統(tǒng)的等級(jí)考試報(bào)名方式,進(jìn)行網(wǎng)上報(bào)名,是一個(gè)可行的途徑,也是發(fā)展趨勢(shì)。

本文將就Struts Tiles在視圖開發(fā)中的優(yōu)勢(shì)進(jìn)行研究分析,并將其應(yīng)用到NCRE網(wǎng)上報(bào)名系統(tǒng)中。

2 Struts Tiles

2.1 Struts

MVC(Model-View-Controller)設(shè)計(jì)模式將Web服務(wù)劃分為模型、視圖、控制器三部分,將處理過程、業(yè)務(wù)邏輯、顯示邏輯分成不同的組件,實(shí)現(xiàn)了各模塊間的松耦合。Struts是Apache軟件基金下的Jakarta項(xiàng)目的一部分,是一種具體實(shí)現(xiàn)MVC模式的程序框架,其采用了Servlet和JSP技術(shù)來實(shí)現(xiàn)。

Struts的視圖主要由JSP文件組成。在這些JSP文件中沒有業(yè)務(wù)邏輯,也沒有模型信息,只有標(biāo)簽,這些標(biāo)簽可以是標(biāo)準(zhǔn)的JSP標(biāo)簽或Struts標(biāo)簽庫中的標(biāo)簽。Struts提供了的Struts html標(biāo)簽庫、Struts Bean標(biāo)簽庫和Struts Logic標(biāo)簽庫。這些標(biāo)簽分別用于:生成HTML表單中元素;定義新的Bean或訪問已經(jīng)存在的Java Bean以及它們的屬性;根據(jù)特定的邏輯條件來控制輸出網(wǎng)頁內(nèi)容,或者循環(huán)遍歷集合中的所有元素。

2.2 Tiles

Tiles是Struts附帶的子框架。Tiles是功能強(qiáng)大的JSP模板框架,它能夠簡(jiǎn)化顯示HTML代碼的重復(fù)使用。使用Tiles可以將JSP頁面分解為單個(gè)"Tiles"或部分,然后可將各部分粘合在一起創(chuàng)建一個(gè)組合頁面。在Struts 1.1之前,Tiles是第三方附加件,現(xiàn)在己經(jīng)將Tiles包含在項(xiàng)目中與Struts緊密集成在一起。

Tiles框架為創(chuàng)建Web頁面提供了一種模板機(jī)制,它能將網(wǎng)頁的布局和內(nèi)容分離,它允許先創(chuàng)建模板,然后在運(yùn)行時(shí)動(dòng)態(tài)地將內(nèi)容插入到模板中,Tiles框架是建立在JSP的include指令基礎(chǔ)上的,但它提供了比JSP的include指令強(qiáng)大的功能。

3 Tiles模板在NCRE網(wǎng)上報(bào)名系統(tǒng)中的應(yīng)用

3.1 界面設(shè)計(jì)需求

全國計(jì)算機(jī)等級(jí)考試網(wǎng)上報(bào)名工作分為兩個(gè)階段:一、是學(xué)生網(wǎng)上注冊(cè)階段,這一階段學(xué)生通過Internet進(jìn)行信息預(yù)錄入,并取得相應(yīng)的注冊(cè)號(hào)。二、是現(xiàn)場(chǎng)交費(fèi)與信息確認(rèn)階段,在此階段考務(wù)工作人員需要和考生共同核對(duì)報(bào)名信息。在第二階段,考務(wù)工作人員需要方便地查看并修改考生信息,確認(rèn)信息無誤后,再進(jìn)行報(bào)名交費(fèi)的確認(rèn)和回執(zhí)打印工作。為此,對(duì)NCRE網(wǎng)上報(bào)名系統(tǒng)的界面設(shè)計(jì)提出以下要求:

界面統(tǒng)一;簡(jiǎn)潔大方;方便操作;能適合當(dāng)前主流分辨率的顯示要求。同時(shí)要求功能菜單與主顯示區(qū)域的內(nèi)容相關(guān)聯(lián)。

圖1 NCRE網(wǎng)上報(bào)名系統(tǒng)功能圖

3.2 應(yīng)用實(shí)現(xiàn)

針對(duì)NCRE網(wǎng)上報(bào)名系統(tǒng)界面設(shè)計(jì)需求,采用如圖2所示的網(wǎng)頁布局。

圖2 典型的網(wǎng)頁布局

圖1顯示了NCRE網(wǎng)上報(bào)名系統(tǒng)的功能。

其中header和footer區(qū)域分別為頁頭和頁腳區(qū),一般變化不大;sidebar區(qū)域?yàn)楣δ懿藛螀^(qū);content區(qū)域?yàn)閮?nèi)容區(qū),當(dāng)在菜單區(qū)點(diǎn)擊不同的菜單時(shí),content區(qū)域的內(nèi)容會(huì)有相應(yīng)的變化。

針對(duì)NCRE網(wǎng)上報(bào)名系統(tǒng)的界面,需要建立一個(gè)布局文件layout.jsp和分別對(duì)應(yīng)各個(gè)區(qū)域的四組JSP文件。在實(shí)際的應(yīng)用中每組JSP文件的名稱各不相同;為了便于描述,分別以header.jsp、sidebar.jsp、footer.jsp和content.jsp來標(biāo)識(shí)四組JSP文件。

在布局文件layout.jsp中可以使用表格來對(duì)header、footer、sidebar和content四個(gè)區(qū)域進(jìn)行頁面布局。在頁面相應(yīng)的各表格代碼中,分別使用形如<tiles:insert attribute="content"/>的標(biāo)簽進(jìn)行占位。

在tiles-defs.xml文件中進(jìn)行類似如下的定義:

以上所定義的"definitionA"代表一個(gè)完整的頁面,因此可以直接通過Struts Action來調(diào)用"definitionA"。這需要在Struts配置文件的<action-mappings>元素中作如下定義:

當(dāng)然也可以通過額外建立一個(gè)JSP文件的方式來使用Tiles定義。在該JSP文件加入以下代碼:

通過Struts Action來調(diào)用Tiles定義,可以充分發(fā)揮Struts框架負(fù)責(zé)流程控制的功能,還可以減少JSP文件的數(shù)目。

4 結(jié)束語

開發(fā)一個(gè)應(yīng)用時(shí),往往要在應(yīng)用的表示層上投入大量的精力和時(shí)間。在開發(fā)一個(gè)具有統(tǒng)一布局的界面時(shí),應(yīng)力求提高頁面代碼的可重用性。希望本文能給使用Struts的開發(fā)人員一些啟示;給擬開發(fā)NCRE網(wǎng)上報(bào)名系統(tǒng)的同行們一些思路。

[1]肖杰,陳翔,何海江,崔韶剛.基于AJAX和Struts的Web應(yīng)用的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(jì),2009(8):1934-1937.

[2]孫衛(wèi)琴.精通 Struts:基于MVC的JavaWeb設(shè)計(jì)與開發(fā)[M].北京:電子工業(yè)出版社,2006

[3]吳四夫,鄧紅梅.StrutsTiles基于組件的開發(fā)[J].信息技術(shù),2004(12):76-79.

猜你喜歡
界面設(shè)計(jì)菜單頁面
《京燕兒》APP界面設(shè)計(jì)
中醫(yī)養(yǎng)生APP界面設(shè)計(jì)
刷新生活的頁面
“共享員工”平臺(tái)界面設(shè)計(jì)
面向智能手機(jī)的UI界面設(shè)計(jì)
中國新年菜單
本月菜單
網(wǎng)站結(jié)構(gòu)在SEO中的研究與應(yīng)用
淺析ASP.NET頁面導(dǎo)航技術(shù)