色噜噜人体337p人体 I 超碰97观看 I 91久久香蕉国产日韩欧美9色 I 色婷婷我要去我去也 I 日本午夜a I 国产av高清怡春院 I 桃色精品 I 91香蕉国产 I 另类小说第一页 I 日操夜夜操 I 久久性色 I 日韩欧在线 I 国产深夜在线观看 I 免费的av I 18在线观看视频 I 他也色在线视频 I 亚洲熟女中文字幕男人总站 I 亚洲国产综合精品中文第一 I 人妻丰满熟av无码区hd I 新黄色网址 I 国产精品真实灌醉女在线播放 I 欧美巨大荫蒂茸毛毛人妖 I 国产一区欧美 I 欧洲亚洲1卡二卡三卡2021 I 国产亚洲欧美在线观看三区 I 97精品无人区乱码在线观看 I 欧美妇人 I 96精品在线视频 I 国产人免费视频在线观看 I 91麻豆国产福利在线观看

專業論文:基于Struts+Spring的Web應用設計與實現

時間:2021-04-01 18:13:23 論文 我要投稿

專業論文:基于Struts+Spring的Web應用設計與實現

  摘 要 集成Struts、Spring框架技術構建基于J2EE的Web應用可以提高J2EE項目的可重用性。本文介紹了兩種流行的開源框架技術Struts和Spring的原理,并將這兩種框架技術整合起來應用到實際的Web項目開發中去,從而提高項目代碼的復用性及項目開發的效率。

專業論文:基于Struts+Spring的Web應用設計與實現

  關鍵詞 J2EE;Struts;Spring

  1 引言

  基于J2EE的Web應用系統以其層次性、平臺無關性逐漸被大多數的公司所認同,已經成為電子商務主要的解決方案。傳統的JSP/Servlet開發模式優勢在于直接、簡單,對于小型應用可以很方便、快速地進行開發。但是這種不加控制的開發模式往往帶來顯示、業務和數據的高耦合性,軟件難以重用。基于J2EE的框架技術是解決上述問題的重要技術,能夠有效地支持大型J2EE Web應用項目的開發。本文通過集成Struts和Spring基于J2EE的框架技術提出了一種構建J2EE應用的框架。

  2 Struts框架技術

  The Jakarta Struts項目是由Apache發起的開源項目,是基于MVC分離思想的杰出產品。Struts的Controller是通過Actionservlet對象實現的,這個控制器獲得View (JSP)的請求后根據ActionMapping對象調度對應的Model(Action對象)處理業務邏輯,并將獲得的處理結果(ActionForward對象)返回給View(JSP)來響應。同時通過ActionForm對象封裝數據在Model和View之間交互使用。Struts還通過自定義的標簽庫豐富了View層的JSP技術,方便了頁面設計。

  下面我們就分別從視圖、控制、模型和Struts的配置文件struts-config.xml來介紹Struts的體系結構。

  (1)視圖。是一組JSP文件,Struts自身包含了一組可擴展的自定義標簽庫,可以簡化創建用戶界面的過程。這些JSP文件中沒有業務邏輯,也沒有信息模型。

  (2)模型。模型主要是表示一個系統的狀態和業務邏輯。在Struts中,系統的狀態主要由ActiomForm Bean體現,對于業務邏輯通常由JavaBean或EJB組件來實現。

  (3)控制器。控制器主要由ActionServlet類和Action類來實現,ActionServlet類是Struts框架中的核心組件,主要負責接收HTTP請求信息。根據配置文件struts-config.xml的配置信息,把請求轉發合適的Action對象。Action類負責調用模型的方法,更新模型的狀態,并幫助控制應用程序的流程。

  (4)配置文件Struts-config.xml。當ActionServlet接收HTTP請求信息時,如何決定把用戶請求轉發給哪個Action對象呢?這就需要一些描述用戶請求路徑和Action映射關系的`配置信息。在Struts中,這些配置映射信息都存儲在特定的XML文件Struts-config.xml中,在該配置文件中,每一個Action的映射信息都通過一個(action)元素來配置。這些配置信息在系統啟動時會被讀入內存,供Struts在運行期間使用,在內存中,每一個(action)元素都對應一個ActionMapping類的實例。

  3 Spring框架技術

  Spring的哲學是在不影響Java對象設計的情況下將Java對象加入到框架中。Spring解決了許多J2EE開發中的常見問題,它不依賴于任何的組件,是一種輕量級的容器,其核心是Bean工廠,用以構造我們所需要的M(Model)。

  Spring框架是一個分層的應用程序開發框架,而不是某一層,如Struts或Hibernate都屬于單獨某一層的框架。Spring致力于在整個應用程序層面架構程序,使程序的各個層面協調一致,從而發揮最大的效能。Spring能整合現有的優秀單層框架,把它們組成連貫統一的框架。Spring框架的模塊化完成的非常好。大體上,存在如圖1所示的幾個模塊。

  其中:

  Spring核心模塊:Spring架構中最為基礎、重要的模塊。它提供了IoC容器,即依賴注入。其中,BeanFactory是最為重要的概念,對理解IoC和ApplicationContext起到了重要作用。

  Spring AOP模塊:實現了AOP聯盟中定義的AOP編程實現。如提供實現事務管理。用它來提供非管理環境下申明方式的事務、安全等服務。

  Spring Context模塊:直接位于Spring的核心模塊之上。Spring上下文模塊除了繼承Spring核心模塊的功能外還添加了用于資源綁定、事件移植、資源裝載以及裝載上下文等功能。這對于Web應用和J2EE應用十分有效。

  Spring Web模塊:提供面向Web應用集成的功能。其中ContextLoaderServlet和ContextLoaderListener正是Web模塊提供的。當同Tapestry、JSF集成時需要使用到Spring Web模塊。

  Spring DAO模塊:提供了JDBC抽象層,使得開發者不用再去編寫同RDBMS交互、非業務功能的JDBC代碼。而且DAO模塊還能夠分析RDBMS廠商專有的SQL錯誤代碼。同時能夠提供編程方式和聲明方式控制事務。

  Spring ORM模塊:為當前流行的O/R Mapping技術提供集成。借助于Spring框架提供的簡單事務聲明,開發者能夠很容易實現對O/R Mapping中操作的事務控制。

  Spring Web MVC模塊:提供MVC實現,清晰的劃分了Web應用中涉及到的各項內容。

  4 基于Struts+Spring框架技術的實現

  在項目開發實踐中提出了基于Struts+Spring框架的J2EE架構。將這兩種框架整合起來用到Web項目開發的不同層。整個架構的結構流程圖所示。

  (1)客戶端發送一個查詢請求,在JSP里提交表單時指定處理表單的path。

  <form name="spQuery" method="post"

  action="{root/create/path} /SPInfoManageAction.do"

  target="bottom" >

  (2)在struts-config.xml文件里根據path配置Action的具體名和路徑。

  <action path="/SPInfoManageAction" type="com.mycom.spmanage.spi nfomanage.action.SPInfoManageAction"

  unknown="false"

  validate="true" >

  <forward name="init"

  path="/../views/spmanage/spinfomanage/SPInfoQuery.jsp"

  redirect="false"

  contextRelative="false" />

  <forward name="SPBriefInfo"

  path="/../views/spmanage/spinfomanage/SPBriefInfo.jsp"

  redirect="false"

  contextRelative="false" />

  (3)在Action類里根據JSP頁傳遞回的操作類型operType參數來執行具體的方法,生成業務邏輯對象BO的實例,并調用BO的getSpInfoQueryBrief,返回一個結果集。

  Private ActionForward spInfoQueryBrief (ActionMapping mapping, HttpServletRequest request,

  HttpServletResponse response) throws ActionException{

  //生成BO類的實例

  SPInfoManageBO service =(SPInfoManageBO)getBaseService().getServiceFacade("spInfoManageBO");

  //用getParameter方法獲取查詢條件

  String spShortName = request.getParameter("spShortName");

  ......

  //指向業務邏輯對象BO類里的方法,返回結果集

  try { coll = service.getSpInfoQueryBrief(mapData);

  } catch (Exception e) {......}

  ......

  //返回參數

  request.setAttribute("spShortName",spShortName);

  ......

  //指向下一步跳轉路徑

  return mapping.findForward("SPBriefInfo");

  (4)在applicationContext.xml里配置BO的路徑以及所調用的數據庫對象DAO

  (5)在dataAccessContext.xml文件里配置數據庫對象DAO具體路徑:

  從而連接到數據庫對數據進行增刪改查操作。并一步步返回數據到表現層,用JSP+XSL展示,從而完成一個流程的操作。

  5 結束語

  Struts+Spring框架是目前眾多軟件企業主流的應用技術,也是J2EE未來發展的趨勢。Struts作為前臺控制框架簡化了程序的開發。使得頁面展示代碼和JAVA代碼編寫工作有效分工,使項目的可擴展性大大增強,提高了開發效率,降低了維護成本。Spring作為一個應用于所有層面的綜合框架,具有強大的應用功能及靈活性,適合作為一些大規模軟件項目的底層平臺。基于Struts+Spring的Web應用實現了表示層、邏輯層和數據庫訪問層等多層面分離,使軟件在擴展性、復用性和維護性方面上有了很大提高。具有很好的發展前景。

  參考文獻

  [1]飛思科技產品研發中心. 精通Spring[J ] . 電子工業出版社,2005.4

  [2]飛思科技產品研發中心. Java Web 服務應用開發詳解[J ] . 電子工業出版社,2002

  [3]孫衛琴.精通Struts 基于MVC的Java Web 設計與開發.電子工業出版社, 2005.01

  [4]童春杰. 基于J2EE的分布式體系及應用.計算機應用研究2002.01

  [5]Spring網站:http://springframework.org

【專業論文:基于Struts+Spring的Web應用設計與實現】相關文章:

基于DSP整流器設計論文04-18

基于系統設計的科研管理論文03-21

低壓備自投系統設計與應用12-10

數學與應用數學專業求職信04-18

數學與應用數學專業最好的大學有哪些10-12

工業設計專業畢業設計(論文)范文08-12

獅子和鹿基于標準的教學設計01-17

淺析演示型多媒體課件的應用與設計原則總結05-15

FPGA數據采集與回放系統設計論文04-24

比應用教學設計04-04

主站蜘蛛池模板: 国产成人日韩 | 亚洲欧美成人综合久久久 | 亚洲3p激情在线观看 | 青草视频免费在线观看 | 成熟老妇女毛茸茸的做性 | 国产又爽又黄又刺激的视频 | 日本a级黄 | 国产成人精品97 | 亚洲成色999久久网站 | 国产婷婷综合 | 星空大象在线观看免费高清 | 精品片| 日韩成人三级 | 97香蕉| 牛牛av | 日本手机在线 | 亚洲伊人久久大香线蕉av | 国产精品h片在线播放 | 旗袍少妇白丝娇喘好爽av九色 | 日本视频不卡 | 成人一区电影 | 国产午夜三级一区二区三桃花影视 | 欧美aaaa大片 | 国产成人一区二区在线 | 久草在线视频新时代视频 | 精品成人免费自拍视频 | 91中文字幕在线 | 日韩欧美国产区 | 国产深夜男女无套内射 | 一本色道av久久精品 | 一区二区三区激情视频 | 欧美一区亚洲二区 | 国产有码在线 | 午夜131美女爱做视频 | 男女一进一出超猛烈的视频不遮挡在线观看 | 国产淫视频 | 亚洲 欧美 日韩 综合aⅴ电影 | 久久综合中文网 | 日韩高清网站 | 中文在线а√在线天堂中文 | 国产人成午夜免电影费观看 | 色乱码一区二区三区 | 日韩高清在线观看av | 日日拍夜夜嗷嗷叫国产 | 日韩精选视频 | 丝袜诱惑一区 | 欧美日韩资源 | 国内大量揄拍人妻精品視頻 | 让少妇高潮无乱码高清在线观看 | 欧美激情精品久久久久久大尺度 | 在线不卡av片免费观看 | av在线播放日韩亚洲欧我不卡 | 91精品国产综合久久四虎久久 | 欧洲成人午夜精品无码区久久 | 捆绑一区二区三区 | 人人干av| 18禁强伦姧人妻又大又 | 日本少妇中文字幕 | 精品久久久久中文字幕日本 | 无码中字出轨中文人妻中文中 | 99久久国产露脸国语对白 | 无码精品国产dvd在线观看9久 | 欧美一级影院 | 亚洲国产成人高清在线播放 | 国产在线成人一区二区三区 | 日韩国产一级 | 亚洲日韩日本中文在线 | 亚洲第一在线 | 国产熟妇高潮呻吟喷水 | 国内精品久久久久久久软件 | 亚洲欧洲成人精品久久一码二码 | 亚洲夜夜夜 | 久草免费福利在线 | 欧美三级不卡在线观看 | 成人精品一区二区户外勾搭野战 | av中文字幕在线免费观看 | 四虎8848精品成人免费网站 | 无码精品一区二区三区在线 | 朝鲜女子内射杂交bbw | 久久久国产乱子伦精品作者 | 国产丰满乱子伦无码专区 | 777爽死你无码免费看一二区 | 欧美成人黄色影院 | 国产v视频在线亚洲视频 | 最近中文字幕在线 | 国产精品jizz在线观看麻豆 | 99干99 | 国产精品女教师av久久 | 精品国品一二三产品区别在线观看 | 午夜久久久精品 | 亚洲一区在线观看免费视频 | 久久久亚洲综合 | 日本成夜色爽免费视频 | 嫩草影院在线免费观看 | www.在线色 | 国产狂喷水潮免费网站www | 久久天天躁狠狠躁亚洲综合公司 | 欧美中文字幕在线视频 | 精品丝袜国产自在线拍av |