亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

基于Spring框架的WebSphere應用開發

2019-11-18 11:12:06
字體:
來源:轉載
供稿:網友

  概

  輕量級的企業應用開發越來越受到廣大J2EE應用開發者的追捧,而SPRing框架又是輕量級容器的杰出代表。由于Spring的使用日漸廣泛,因此已有許多基于WebSphere應用服務器(WAS)的應用采用了Spring框架。本文首先介紹使用Spring開發Web應用的基本問題,然后結合WebSphere應用服務器,講述Spring應用如何結合容器提供的服務。文章目的是與大家一起探討如何更好的采用Spring框架開發基于WebSphere應用服務器的應用。

  1、Spring框架的主要思想描述

  Spring框架的核心思想我們可以用兩個字來描述,那就是"解耦"。應用程序的各個部分之間(包括代碼內部和代碼與平臺之間)盡量形成一種松耦合的結構,使得應用程序有更多的靈活性。應用內部的解耦主要通過一種稱為控制反轉(IOC)的技術來實現??刂品崔D的基本思想就是本來由應用程序本身來主動控制的調用等邏輯轉變成由外部配置文件來被動控制。通常我們用一個所謂的好萊塢原則(Don't call me. I will call you.)來比喻這種控制反轉的關系。由于控制反轉的概念相對比較廣泛,很多應用服務器實際上也實現了不同程度的控制反轉技術,只是這些應用服務器對應用程序的侵入性太強。因此Martin Fowler專門寫了一篇文章討論控制反轉這個概念,并提出一個描述更為準確的概念,叫依靠注入(Dependency Injection)。

  Spring框架中的各個部分都充分使用了這種依靠注入的技術實現,從而給應用以最大的靈活度。實際上,這種依靠注入的參數化應用控制并不是Spring的首創,比如IBM的多渠道應用整合平臺(Branch Transformation Toolkit,BTT)很早就采用了這種外部參數化控制的技術。BTT中的"對象工廠"與Spring框架中的BeanFactory也有著異曲同工之妙。

  Spring框架另外一個比較重要的技術是它對于面向切面的編程(AOP)的支持。隨著應用復雜度的逐漸上升和對應用靈活性要求的提高,IT邏輯和業務邏輯盡量分離的呼聲也越來越高。AOP技術作為實現這種分離的一種比較好的途徑而越來越受到大家的重視。Spring提供的是一種動態AOP實現,也即通過代理模式動態地在目標對象的方法前后插入相應的處理代碼。應用程序與底層應用服務器平臺的解耦也可以借助AOP技術來實現。Spring內置的AOP支持是一種錦上添花的功能。它使得一些本來必須由容器支持的功能,比如事務控制可以脫離開容器運行,從而達到"瘦身"的目的。這也是為什么Spring框架常被人成為輕量級容器的一個原因。

Spring框架可以與許多已有的框架技術結合使用。J2EE技術應用的一個重要特點是相關的開源社區非?;钴S。Web應用的不同層次都有非常多優秀的開源框架存在。比如Web層的Struts,OR映射層的Hibernate等。Spring框架并不重新發明輪子,它的出現不是為了替代這些已有的框架。相反,Spring框架在設計上可以獨立構建應用或者結合已有的框架一起構建應用。另外一個值得指出的地方是Spring框架的幾大模塊之間相互耦合度很小,因此Spring框架的使用可以根據實際需要選其部分模塊循序漸進的使用,而非必須統統照搬。

  2、基于Spring的Web應用基礎

  2.1 Web應用的典型層次

  Web應用一般在邏輯上根據功能分為以下幾層:

  1.展示層

  這一層主要如何生成展示給最終用戶的界面,盡可能少的包含業務邏輯處理。對于基于J2EE的Web應用,jsp是其最為常見的一種技術。Spring對于展示層的支持非常靈活,除了直接支持JSP之外,它還支持基于FreeMarker模板,基于Velocity模板或其它文檔類型的界面等的表現層實現。

  2.業務層

  業務層一般包含主要的業務邏輯,尤其是與用例相對應的那些業務邏輯。另外,這一層也適合包含事務治理和安全控制方面的邏輯。良好的業務層設計可以使得展示層可以采用不同的技術而不影響業務層。業務層的功能上可以類比于J2EE技術中的無狀態會話BEAN層次。

  3.數據訪問對象(DAO)接口層

  DAO實際上就是數據接口層,在應用中建議通過接口來體現。DAO的存在使得數據訪問可以與底層持久化層的具體實現相分離。一般在DAO接口中主要就是實現數據對象的查詢、存儲、刪除等操作。從理論上講,DAO層與底層數據的存儲方式是獨立的,也就是說并不一定要求是關系型數據庫。Spring框架在設計的時候也考慮到了其它非關系型數據庫數據源的情況。

  4.持久業務對象

  持久業務對象是問題域中業務對象的持久化表示,比如一個用戶對象,一個銀行帳戶等。我們一般通過某種O/R映射技術來實現這些業務對象的持久化。持久業務對象是可以包含業務邏輯的,與業務層所包含的業務邏輯不同的地方是持久業務對象所包含的是與具體業務對象直接相關且更為通用的業務邏輯。

  5.企業信息系統

  企業信息系統泛指Web應用需要連接的后臺系統,一般可以分為三大類,即ERP系統,企業傳統的遺留系統和關系型數據庫。大部分Web應用都是基于關系型數據庫的,這也是像Spring等常見框架所主要考慮的企業信息系統。

  設計良好的Web應用在層次一般是上一層依靠下一層,但是下一層不依靠上一層。我們可以暫時概括為"向下而不向上依靠原則"。為了使得不同層次之間的依靠降到最低,建議使用接口耦合。這一點又是Spring框架發揮它外部配置優勢的地方。

  2.2 MVC的選擇

  雖然說MVC這種模式早在java語言出現前就有了,但是這種模式在J2EE時代才大行其道,為廣大Web應用開發者所接受。對于各種基于MVC的框架而言,其要解決的問題主要可以分為以下幾部分:

  1.將Web頁面中的輸入封裝成一個數據對象,比如像Struts的表單BEAN,Spring MVC中的命令類等。

  2.根據請求的不同,由負責分發的控制器來映射和調用相應的邏輯處理單元,并將上面的數據對象作為參數傳入。

  3.邏輯處理單元完成相應的處理之后又把結果放入一個數據對象。

  4.在選擇的展現界面中把返回的數據對象通過某種方式顯示出來。

  在使用Spring構建MVC的時候,可以選擇直接使用Spring自己的MVC實現,或者利用Spring對已有的一些MVC框架的支持。比如Spring可以支持Struts,WebWork等,與它們結合使用。Spring引以為傲的非侵入的特性在Spring MVC上表現得并不如人意。它與Servlet API的耦合度較其它部分高,而且需要使用一些Spring的接口和類。

  Spring MVC的主要分發器實現是org.springframework.web.servlet.DispatcherServlet,這是Spring MVC的訪問入口。Spring提供SimpleFormController,AbstractCommandController等類來幫助應用構建各種控制器動作,并用ModelAndView類來聯系展示和邏輯返回數據。如上節所述,Spring MVC能夠支持不同的界面展示技術,而且界面的展示和其后面控制器的實現是分離的,也即界面展示技術的變化不用修改控制器的實現,只需要利用Spring的控制反轉技術修改外部配置文件即可。比如,在使用JSP展示技術時,外部配置文件的viewResolver定義如下:



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品亚发布| 国产精品88a∨| 91亚洲精品久久久| 亚洲精品欧美极品| 欧美日韩在线视频观看| 欧美极品美女电影一区| 久久91超碰青草是什么| 欧美理论在线观看| 亚洲成年人在线播放| 国产精品成人一区二区三区吃奶| 日韩欧美国产视频| 国精产品一区一区三区有限在线| 亚洲天堂网站在线观看视频| 午夜精品视频网站| 久久成人一区二区| 欧美自拍视频在线观看| 国产91精品高潮白浆喷水| 麻豆一区二区在线观看| 久久中文字幕在线视频| 精品magnet| 亚洲欧洲免费视频| 精品久久久久久| 日韩亚洲欧美成人| 国产69精品久久久久久| 日韩经典一区二区三区| 美日韩精品免费观看视频| 久久久久久网址| 亚洲国产精品va在线| 欧美xxxx14xxxxx性爽| 欧美日韩美女视频| 亚洲另类图片色| 亚洲大尺度美女在线| 欧美性一区二区三区| 亚洲精品一区二区网址| 国产视频综合在线| 亚洲精品按摩视频| 亚洲欧美资源在线| 欧美日韩精品二区| 国内精品久久久久久| 国产精品福利在线观看| 日韩中文字幕网| 亚洲第一综合天堂另类专| 国产欧美精品va在线观看| 久久久精品影院| 欧美性色xo影院| 久久91精品国产91久久跳| 国产欧美精品在线播放| 国产精品一区久久| 国产精品久久久久久久久久三级| 日韩在线视频播放| 国产91精品网站| 成人午夜两性视频| 国产精品wwwwww| 中文字幕亚洲无线码a| 日韩美女福利视频| 久久久久久成人| 国产精品色午夜在线观看| 日韩精品中文字幕视频在线| 91在线观看免费高清| 成人两性免费视频| 97久久精品人人澡人人爽缅北| 国产精品女人久久久久久| 亚洲网站在线播放| 亚洲激情视频在线观看| 久久久久久国产精品美女| 波霸ol色综合久久| 色狠狠av一区二区三区香蕉蜜桃| 国内自拍欧美激情| 尤物99国产成人精品视频| 91九色精品视频| 欧美日韩另类字幕中文| 4p变态网欧美系列| 久久久久久香蕉网| 亚洲精品欧美一区二区三区| 日韩欧美在线视频免费观看| 96sao精品视频在线观看| 精品自拍视频在线观看| 91久久精品视频| 日韩专区中文字幕| 一本一本久久a久久精品牛牛影视| 九九九热精品免费视频观看网站| 日本精品一区二区三区在线播放视频| 久久精品国产96久久久香蕉| 国产精品美女主播在线观看纯欲| 欧美成人免费网| 日韩av网址在线观看| 成人中心免费视频| 欧美久久精品午夜青青大伊人| 亚洲欧美日韩国产中文| wwwwwwww亚洲| 国产成人激情视频| 亚洲精品综合久久中文字幕| 国产精品jizz在线观看麻豆| 97在线精品国自产拍中文| 欧美成人免费全部观看天天性色| 欧美日韩中文字幕| 欧美放荡办公室videos4k| 最近2019中文字幕一页二页| 成人黄色影片在线| 日产精品99久久久久久| 欧美日韩亚洲网| 日韩在线观看免费全集电视剧网站| 成人写真福利网| 国产日韩精品在线播放| 精品女同一区二区三区在线播放| 久久久久久久91| 热re91久久精品国99热蜜臀| 日韩欧美亚洲成人| 国产精品三级久久久久久电影| 欧美激情一区二区三区在线视频观看| 日韩在线视频二区| 国产日韩在线看| 亚洲精品视频播放| 欧美电影免费播放| 欧美精品免费在线| 国产成人小视频在线观看| 97热在线精品视频在线观看| 国产精品夜间视频香蕉| 91在线直播亚洲| 91大神福利视频在线| 欧洲成人在线观看| 亚洲国产小视频| 久久久免费观看视频| 国产精品九九久久久久久久| 成人精品在线观看| 国产成人精彩在线视频九色| 日韩毛片在线观看| 最新亚洲国产精品| 日本在线观看天堂男亚洲| 欧美日韩裸体免费视频| 国产成人avxxxxx在线看| 最新69国产成人精品视频免费| 久久精品电影一区二区| 日韩在线视频导航| 国产精品美女久久久免费| 欧美性色xo影院| 久久久亚洲影院| 欧美成人精品一区二区三区| 亚洲精品自拍第一页| 欧美xxxx14xxxxx性爽| 亚洲欧美制服综合另类| 成人黄色av网| 国产91ⅴ在线精品免费观看| 国产精品美女在线观看| 亚洲人成在线观看| 久久久亚洲精选| 日韩在线观看免费网站| 精品久久久香蕉免费精品视频| 欧美精品成人在线| 亚洲成人在线视频播放| 精品magnet| 在线国产精品播放| 亚洲电影在线观看| 国产精品视频播放| 日韩精品丝袜在线| 亚洲第一网站免费视频| 亚州欧美日韩中文视频| 日韩av在线免费观看一区| 欧美大片免费观看在线观看网站推荐| 亚洲天堂精品在线| 国产精品午夜视频| 国产91色在线播放| 国产成人精品午夜| 成人欧美一区二区三区黑人|