999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Spring.NET的電子商城系統輕量級框架研究

2015-05-30 10:48:04林平榮
軟件工程 2015年2期

摘 要:為了有效改善系統的結構,降低系統開發復雜度,提出了以現有開源框架為基礎的輕量集成框架,該框架以Spring.Net為核心,與ASP.NET MVC、NHibernate框架進行整合,以多層次結構劃分系統,從而實現應用程序的動態構建,減少系統的復雜度,確保系統的可擴展性和可維護性。對該框架進行了技術性分析,實驗結果表明了該框架的可行性及有效性。

關鍵詞:輕量框架;Spring.NET;電子商城;NHibernate

中圖分類號:TP3 文獻標識碼:A

1 引言(Introduction)

近幾年來,隨著科學技術的不斷發展,計算機應用日益普及,人們對應用軟件的需求日益增大。軟件規模越來越大,其代碼設計越是復雜。客戶的需求往往復雜而多變,在需求分析階段初期,客戶對自己的業務模型,并不一定完全熟悉,只能給出一個模糊而抽象的業務需求模型。當客戶發現軟件的功能并非自己所需的時候,則需要對軟件進行修改和擴展,從而加大軟件的開發難度及成本。

為了滿足用戶復雜多變的需求,軟件的動態性越趨重要。軟件的動態性體現在軟件的靈活性和可擴展性上。當需要對軟件進行更改和擴展的時候,能夠在原有系統基礎上較輕松的修改,且盡可能小的影響原有系統。為此,軟件程序應該具備良好的分層結構,降低程序模塊之間的耦合,增加擴展的靈活性,同時軟件需要能夠提供動態替換機制以及可插入機制的能力。本文以電子商城為例,提出了以現有開源框架為基礎的輕量集成框架,用來解決系統集成中普遍存在著的擴展性、適應性問題[1]。

2 電子商城系統框架(Electronic shop system

framework)

以Spring.Net為核心來構建電子商城系統,以三層架構為基礎,整合Asp.Net MVC以及Nibernate,構建基于Web的電子商城系統輕量級集成框架,同時以RESTful風格設計網絡訪問,在一定程度上提高SEO優化效果。

2.1 框架簡介

(1)分層體系結構

在目前的軟件設計架構中,三層架構是比較常見的一種分層式結構,即數據訪問層、業務邏輯層、表示層這三層,同時還有一個模型層(Model)。數據訪問層用于訪問數據存儲系統,控制數據訪問邏輯,為業務邏輯層提供服務。而業務邏輯層則負責封裝各種業務邏輯,數據校驗等。而最上層的則是表現層,將數據以人性化的方式展現給用戶。而模型則負責在各層傳遞數據。

(2)Asp.Net MVC框架

Asp.net MVC框架通過Controller、View、Model這三者來處理用戶的請求以及展示數據。整個框架通過使用Asp.net MVC代替傳統WebForms,可以減少框架復雜度,避免了WebForm中大量的ViewState而導致頁面文件變得過于臃腫,從而減少了帶寬的壓力,增加測試的可行性,使得框架更加輕量化。

(3)Nhiberate框架

NHibernate是一個基于.NET的針對關系型數據庫的對象持久化類庫,與直接使用ADO.NET操作SQL來執行數據庫的邏輯操作相比,NHibernate更能夠大量減少開發以及維護的成本。NHibernate通過XML文件描述,建立對象與關系模型數據(表或視圖)之間的映射,以面向對象的編程思想來實現對數據庫的訪問邏輯,從而可以提高開發效率,減少低級錯誤的產生。當對象需要持久化時候,則會通過框架來生成對應的SQL語句,同時由框架來維護事務會話,使得開發更加簡便。由于不直接與數據庫交互,從而使得程序擁有更好的可擴展性和可維護性。

(4)Spring.Net框架

Spring.NET是基于.NET之上的應用程序框架,也是java第三方框架Spring的.Net版本。Spring.NET主體是IOC和AOP[2]。IOC全稱為Inversion of Control,叫控制反轉,一般也稱其為依賴注入,它改變了傳統在程序中強制聲明對象的創建方法[3]。通過IOC,模塊與模塊之間的依賴,只需依賴其暴露出的接口,而具體的實現有IOC容器來管理,通過配置文件指向具體的實現便可以讓被調用方的具體實現注入的調用方,最終降低軟件模塊之間的耦合度,控制模塊之間的調用,降低軟件開發的工作量,提高軟件應用效率。AOP全稱為Aspect-Oriented Programming,面向切面的編程,它能夠分解系統服務功能,分離出重復或者次要的部分使其模塊化,并對其提供聲明式的系統服務方式。典型的使用方式一般包含了方法調用的日志記錄,異常的處理,事務的控制等,這一些都是最容易重復產生部分,通過AOP將其抽出,從而使得代碼更加簡潔,減少后續開發與維護的成本。

2.2 框架系統結構

基于Spring.Net的電子商城系統框架,以三層架構為基礎,以Spring.Net為核心,銜接Asp.Net MVC和Nibernate,通過IOC控制各層的具體依賴,以AOP分解系統的服務,如圖1所示。

圖1 系統框架

Fig.1 System framework

2.3 技術可行性分析

表現層采用ASP.NET MVC框架實現,通過Spring提供的IOC機制,與業務邏輯層所交互,使得表現層與業務邏輯層相解耦。業務邏輯層,由表現層所調用,通過上層請求訪問,結合數據訪問層所提供的服務,進行相對應的邏輯驗證,運算等操作,最后反饋信息。通過AOP服務,抽取封裝日志記錄,異常處理,事務控制等,從而到達分解系統服務功能,避免重復的開發。數據訪問層,由NHibernate框架實現,與關系數據庫建立映射,以面向對象的方式處理數據庫,與Spring.Net結合,封裝事務處理機制,大大減少系統構建的復雜度;內置的緩存機制,大大提高數據訪問的效率以及可靠性。通過NHibernate可以方便切換不同的DBMS,提高整體可維護性與可擴展性。綜上所述,該框架在技術上可行。

3 示例分析(Example analysis)

以電子商城系統為例,使用本文所述框架來實現電子商城系統的開發。

3.1 基礎架構

以三層架構為基礎,構建系統的初始化架構,劃分為三層,數據訪問層,業務邏輯層以及Web層,如圖2所示。

圖2 基礎架構

Fig.2 Infrastructure

(1)數據訪問層

IDAL項目:數據訪問邏輯接口層;DAL項目:數據訪問邏輯的實現層,采用Nhibernate框架實現。

(2)業務邏輯層

IBLL:業務操作接口層;BLL:業務邏輯實現層。

(3)表現層

Web:頁面表現層,采用ASP.NET MVC框架搭建。

Entity層,貫穿三層,用于數據的傳輸和共享,持久化等。Config層,存放一些Spring.net相關的IOC和AOP配置。

3.2 數據訪問層

基于NHibernate實現,通過XML描述方式,建立對象與數據庫表之間的關系,以商品表為例,相關配置代碼示例如下所示:

……

3.3 業務邏輯層

這一層系統業務核心價值所在之處,同樣將具體的業務定義(IBLL)與實現分離(BLL)。對數據訪問層的依賴,只依賴其接口,通過Spring.Net注入相應的配置。業務實現類中,只需依賴接口,通過XML注入具體的實現,先注冊實現類,代碼如下:

再通過配置,為業務實現類注入具體的數據訪問實現。

3.4 Web表現層

表現層依賴業務邏輯層的接口,由Spring.net提供實現的注入。表現層中的View展示數據,交互之時,由Controller來控制數據的流向。而Web項目中,處于層次的最頂端,需要做最后的配置,即提供Spring.Net管理的入口。通過在Web.config中配置,將Asp.NET MVC的控制器,以及數據訪問層,業務邏輯層的相關實現由Spring.NET來統一管理。

在Web.config中先配置一個Spring節點,然后配置相應的組件定義以及依賴關系,指向對應的文件。

4 結論(Conclusion)

本文結合電子商城系統開發實例,通過第三方框架Spring.Net和NHibernate,采用ASP.NET構建三層應用程序,把應用程序進行分拆,使得程序結構更加清晰,降低其復雜度,從而使程序擁有更高的可擴展性和可維護性。

后續工作主要是更好的完善整個輕量級框架,探討和設計一套簡便的配置管理與集成的解決方案,同時在本框架的基礎上創建能夠簡便應用于電子商城的功能組件,最終降低系統復雜度以及達到開發集成與測試的技術要求。

參考文獻(References)

[1] 張紅光,蔣躍軍,左玉龍.基于消息傳遞的企業信息系統集成

框架研究[J].計算機工程與設計,2005,26(12):3219-3221.

[2] 劉艷.利用Spring.Net構建動態的三層應用程序框架[J].硅谷

Silicon Valley,2013,(14):31.

[3] 林慶.基于ASP.NET的MVC設計模式的研究[J].計算機工程

與設計,2008(1):167-169.

作者簡介:

林平榮(1981-),男,碩士,講師.研究領域:軟件工程.

主站蜘蛛池模板: 青青草原国产精品啪啪视频| 无码AV日韩一二三区| 国产精品yjizz视频网一二区| 中文字幕免费播放| 亚洲午夜国产精品无卡| 国产理论最新国产精品视频| 无码一区18禁| 亚洲AⅤ综合在线欧美一区| 韩国福利一区| 国产熟女一级毛片| 亚洲色图欧美激情| 精品久久久久久成人AV| 99视频在线免费| 欧美一级视频免费| 伊人久久大香线蕉综合影视| 欧美成人手机在线观看网址| 欧美色视频在线| 久久精品嫩草研究院| 亚洲成av人无码综合在线观看| 国产精品成人观看视频国产 | 国产精品一区二区不卡的视频| 亚洲精品国产乱码不卡| 国产精品不卡永久免费| 污污网站在线观看| 欧美日韩在线第一页| 中文字幕伦视频| 99热这里都是国产精品| 亚洲va视频| 无码网站免费观看| 国产毛片久久国产| 国产欧美精品一区aⅴ影院| 国产亚洲高清视频| 无码高清专区| 91美女视频在线观看| 国产91视频观看| 国产91久久久久久| 在线观看国产小视频| 老司机午夜精品视频你懂的| 九一九色国产| 亚洲国产精品美女| 欧美色图第一页| 久久五月视频| 71pao成人国产永久免费视频| 久久久久久高潮白浆| 日本久久网站| 婷婷色在线视频| 国产97视频在线| 在线精品亚洲国产| 尤物精品视频一区二区三区| 日韩欧美中文在线| 国产精品天干天干在线观看| 奇米精品一区二区三区在线观看| 久久人搡人人玩人妻精品| 久久伊人操| 三上悠亚在线精品二区| 成人久久精品一区二区三区| 国产人人射| 亚洲福利一区二区三区| 久久精品国产精品青草app| 中文字幕 日韩 欧美| 97在线免费| 超级碰免费视频91| 国产成人亚洲精品色欲AV | 久久精品嫩草研究院| 国产精品99久久久久久董美香| 久久国产拍爱| 日本一区二区不卡视频| 欧美精品xx| 色综合五月| 无码精品一区二区久久久| 欧美伦理一区| 72种姿势欧美久久久大黄蕉| 亚洲国产日韩在线成人蜜芽| 日本免费福利视频| 亚洲成a人片| 伊人久久青草青青综合| 中文字幕有乳无码| 无码中文字幕乱码免费2| 精品国产99久久| 免费AV在线播放观看18禁强制 | 国产在线高清一级毛片| 九九线精品视频在线观看|