亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Spring MVC的Web應(yīng)用開發(fā)

        2013-10-15 07:38:32舒禮蓮
        計(jì)算機(jī)與現(xiàn)代化 2013年11期
        關(guān)鍵詞:視圖應(yīng)用程序頁面

        舒禮蓮

        (江西省計(jì)算技術(shù)研究所,江西 南昌 330002)

        0 引言

        Spring框架是當(dāng)前流行的輕量級(jí)一站式企業(yè)應(yīng)用程序解決方案,它為應(yīng)用程序開發(fā)提供了許多基礎(chǔ)結(jié)構(gòu),例如:事務(wù)處理、遠(yuǎn)程方法、消息處理等,使開發(fā)人員能夠?qū)W⒂诔绦驑I(yè)務(wù)邏輯的實(shí)現(xiàn)。MVC模式是近年來流行的應(yīng)用程序架構(gòu),它將應(yīng)用程序分為模型(Model)、視圖(View)、控制器(Controller)3個(gè)部分。其中,模型負(fù)責(zé)存儲(chǔ)數(shù)據(jù),視圖負(fù)責(zé)顯示用戶界面,控制器負(fù)責(zé)控制模型和視圖。MVC模式使得程序結(jié)構(gòu)更加清晰,利于維護(hù)。目前已經(jīng)有許多流行的MVC框架,如Struts、WebWork等。Spring框架也包含了一個(gè)MVC框架,它與Spring能夠更加有機(jī)地結(jié)合。

        1 Spring MCV框架工作原理

        Spring MVC框架支持 XML配置和 Java注解(Annotation)配置。Spring MVC框架圍繞DispatcherServlet設(shè)計(jì)。DispatcherServlet是一個(gè) Java Servlet,它根據(jù)用戶提交的HTTP請(qǐng)求指派不同的處理程序。DispatcherServlet是一個(gè)前端控制器,它負(fù)責(zé)接收用戶的HTTP請(qǐng)求,并分配給其他控制器進(jìn)行處理。其他控制器接收用戶請(qǐng)求,提取其中的參數(shù)信息,并提取模型中存儲(chǔ)的數(shù)據(jù),進(jìn)行處理,然后再傳遞給DispatcherServlet。DispatcherServlet將結(jié)果數(shù)據(jù)傳遞給一個(gè)視圖模板,例如JSP頁面,JSP頁面將數(shù)據(jù)顯示在頁面上返回給用戶。這樣就較好地實(shí)現(xiàn)了數(shù)據(jù)、程序邏輯和用戶界面的分離。Spring框架結(jié)構(gòu)圖如圖1所示。

        圖1 Spring MVC框架結(jié)構(gòu)圖

        2 控制器配置方法

        Spring MVC框架充分利用了Spring框架的非侵入性編程的優(yōu)點(diǎn)。開發(fā)人員無需實(shí)現(xiàn)任何Spring框架有關(guān)的接口。

        DispatcherServlet在web.xml中的配置如下:

        類BusinessController的定義前面加上了Java注解@Controller,表示它是一個(gè)控制器類,該類中的方法用于處理用戶請(qǐng)求。該類前面的@RequestMapping("/myurl")注解表示該類用于處理 URL路徑“/myurl”的用戶請(qǐng)求。例如應(yīng)用程序名為myapp,則用戶在瀏覽器輸入http://localhost/myapp/myurl的請(qǐng)求地址,該請(qǐng)求將轉(zhuǎn)到類BusinessController中的方法進(jìn)行處理。

        該類中的方法doGet前面加上了@RequestMapping(method=RequestMethod.GET),則表示對(duì)于用戶HTTP請(qǐng)求為GET類型的,將調(diào)用doGet方法進(jìn)行處理。如果要處理POST類型的HTTP請(qǐng)求,則將method屬性值改為RequestMethod.POST。

        RequestMapping可將參數(shù)值傳入業(yè)務(wù)方法,例如:

        表示用戶請(qǐng)求URL中的一部分可以作為參數(shù)傳入該業(yè)務(wù)方法的personId參數(shù)。personId參數(shù)前面的@PathVariable注解表示該參數(shù)從URL路徑中獲取。例如:用戶輸入 http://localhost/myapp/102405,則“102405”被作為參數(shù)傳遞給doBusiness方法。

        HTTP請(qǐng)求參數(shù)也可直接傳入業(yè)務(wù)方法參數(shù),例如:

        則HTTP請(qǐng)求中的personId查詢參數(shù)被傳入business-Method的personId參數(shù)。用戶輸入http://localhost/myapp?personId=102405,則“102405”被作為參數(shù)傳遞給businessMethod方法。方法參數(shù)不一定要求是String類型,int、long、Date均可從查詢字符串解析得到,如果解析失敗將拋出異常。

        HTTP請(qǐng)求參數(shù)可直接綁定到模型數(shù)據(jù),例如:

        在調(diào)用這個(gè)方法之前,Spring MVC會(huì)創(chuàng)建一個(gè)Person類型的person對(duì)象,該對(duì)象有諸如 personId、name等屬性,Spring MVC會(huì)將請(qǐng)求頁面上的person-Id、name等參數(shù)值賦值給這些屬性,然后將person對(duì)象加入到模型中,再將person對(duì)象傳遞給processRequest方法的person參數(shù)。

        3 視圖與控制器的接口

        最常用的視圖是JSP,此外,Spring MVC還支持Velocity、Freemarker、XML、JSON 等多種視圖形式。

        在Spring MVC中,除了原來的ApplicationContext配置環(huán)境之外,還專門針對(duì)Web應(yīng)用設(shè)置了一個(gè)WebApplicationContext,它包含了Web應(yīng)用中使用的bean配置。其中視圖解析器的配置如下:

        表示使用JSP視圖,JSP的URL路徑前綴為“/WEBINF/jsp/”,后綴為“.jsp”。例如,控制器業(yè)務(wù)方法最后return“myview”,則表示將 myapp/WEB-INF/jsp/myview.jsp頁面返回給用戶。

        可以重定向視圖如下:

        表示將用戶路徑的URL中的 path部分重定向到files/目錄下。例如,用戶輸入 http://localhost/myapp/mypath/mypage.jsp,則將重定向到 http://localhost/myapp/files/mypath/mypage.jsp 頁面。

        4 結(jié)束語

        在Web開發(fā)中使用MVC模式將降低用戶界面和合同數(shù)據(jù)的耦合,提高代碼的可維護(hù)性。Spring MVC框架可以較好地實(shí)現(xiàn)企業(yè)應(yīng)用程序的MVC模式,并不會(huì)對(duì)原有業(yè)務(wù)邏輯代碼產(chǎn)生侵入。它支持XML配置和Java注解配置,為設(shè)計(jì)提供了較大的靈活性。Spring MVC框架是一種較好的設(shè)計(jì)方法,可以在企業(yè)應(yīng)用開發(fā)中廣泛應(yīng)用。

        [1]SpringSource.Web MVC Framework[EB/OL].http://static.springsource.org/spring/docs/3.2.x/spring-frameworkreference/html/mvc.html,2012-12-05.

        [2]Colin Sampaleanu.Green Beans:Getting Started with Spring MVC[EB/OL].http://blog.springsource.com/2011/01/04/green-beans-getting-started-with-spring-mvc/,2011-01-04.

        [3]陳雄華,林開雄.Spring 3.x企業(yè)應(yīng)用開發(fā)實(shí)戰(zhàn)[M].北京:電子工業(yè)出版社,2012.

        [4][美]Gary Mark,Daniel Rubio,Josh Long.Spring攻略(第2版)[M].陳宗恒,姚軍,蔣亮譯.北京:人民郵電出版社,2012.

        [5][美]Craig Walls,Ryan Breidenbach.Spring in Action(第2版)[M].畢慶紅,王軍譯.北京:人民郵電出版社,2008.

        [6]王坤.基于J2EE平臺(tái)Spring MVC框架開發(fā)的MIS系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].上海:華東師范大學(xué),2008.

        [7]邵剛.基于Spring框架的MVC控制器的優(yōu)化與改進(jìn)[D].濟(jì)南:山東大學(xué),2011.

        [8]鄒存潔.基于MVC模式的Spring框架的應(yīng)用與研究[D].大連:大連海事大學(xué),2006.

        [9]歐勤坪.基于Spring MVC+iBATIS框架的生物信息數(shù)據(jù)庫系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].重慶:西南大學(xué),2009.

        [10]郭俊卿.基于MVC框架的上海財(cái)稅征管系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].北京:北京郵電大學(xué),2007.

        [11]劉軍,戴金山.基于 Spring MVC與iBATIS的輕量級(jí)Web應(yīng)用研究[J].計(jì)算機(jī)應(yīng)用,2006,26(4):840-843.

        [12]張宇,王映輝,張翔南.基于Spring的MVC框架設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2010,36(4):59-62.

        [13]符培炯,杜忠軍.Spring在實(shí)現(xiàn)MVC構(gòu)架中的應(yīng)用[J].計(jì)算機(jī)技術(shù)與發(fā)展,2006,16(6):236-238.

        [14]劉星沙,羅昔軍.基于MVC模式的Struts和Spring整合框架的研究與應(yīng)用[J].湘潭大學(xué)自然科學(xué)學(xué)報(bào),2007,29(1):92-95.

        猜你喜歡
        視圖應(yīng)用程序頁面
        大狗熊在睡覺
        刷新生活的頁面
        刪除Win10中自帶的應(yīng)用程序
        5.3 視圖與投影
        視圖
        Y—20重型運(yùn)輸機(jī)多視圖
        SA2型76毫米車載高炮多視圖
        關(guān)閉應(yīng)用程序更新提醒
        電腦迷(2012年15期)2012-04-29 17:09:47
        同一Word文檔 縱橫頁面并存
        淺析ASP.NET頁面導(dǎo)航技術(shù)
        伊人网视频在线观看| 亚洲精品国产精品乱码视色| 天天躁夜夜躁狠狠躁2021a2| 久久日本三级韩国三级| 精品久久亚洲一级α| 人妻有码中文字幕在线| 成熟了的熟妇毛茸茸| 女厕厕露p撒尿八个少妇| 国模无码视频专区一区| 亚洲大胆视频在线观看| 久久国产精品亚洲婷婷片| 99久久精品日本一区二区免费| 日韩欧美中文字幕公布| 日本精品久久中文字幕| 日本一区二区三区视频网站| 日韩少妇内射免费播放| 亚洲a级片在线观看| 在线免费观看毛视频亚洲精品| 国产在线第一区二区三区| 国产超碰人人做人人爱ⅴa| 精品日韩欧美| 亚洲一区二区三区在线看| 大学生高潮无套内谢视频| 久久97精品久久久久久久不卡| 国产一区二区三区视频免费在线| 男男亚洲av无一区二区三区久久| 国产精品成人aaaaa网站| 日本一本久道| 一区二区黄色素人黄色| 日本少妇高潮喷水视频| 天堂√中文在线bt| 国产成人精品视频网站| 中文字幕av永久免费在线| 亚洲av永久精品爱情岛论坛| 国产人成无码视频在线| 日韩国产一区二区三区在线观看 | 一本大道熟女人妻中文字幕在线| 国产午夜福利小视频合集| 粉嫩小泬无遮挡久久久久久| 精品国产一区二区三区av麻| 亚洲色成人网站www永久四虎|