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

基于.NET的Web框架在用電信息采集系統中的應用

2012-11-27 01:46:16高會生
網絡安全與數據管理 2012年20期
關鍵詞:數據庫信息系統

韓 勇,高會生,顧 博,劉 柳

(華北電力大學 電氣與電子工程學院,河北 保定 071003)

傳統的用電信息采集系統主站軟件開發大多采用C/S模式,其數據采集和業務應用等操作均在一個業務內網中完成,其數據僅能提供給業務內網所覆蓋的少數內部相關人員使用,數據使用效率不高?;贐/S模式開發的用電信息采集系統將應用程序處理部分集中于服務器端完成,用戶界面統一采用瀏覽器,無需安裝客戶端程序,任意授權上網客戶均可獲得最快捷的個人網上交互式服務。與此同時,維護人員也不再為程序的維護工作奔波于每個客戶機之間,而把主要精力放在功能服務器的程序更新工作上。

然而在B/S模式開始盛行時,基于Web開發的用電信息采集系統大多采用ASP、PHP、JSP等技術,將業務邏輯和頁面顯示混合在一起,極其不利于分工與協作;而且在業務邏輯中采用內嵌SQL語句的方式完成數據訪問,一旦數據庫或者類定義中一方發生變化,就會導致系統的大幅修改,不利于系統的維護。針對以上不足,本文結合 MVC設計模式、Ext JS、Spring.NET和對象關系映射NHibernate等多項技術,提出了一種基于.NET平臺的Web應用框架,并分析了該框架在用電信息采集主站系統中的實際應用,為解決Web應用的不足提供一種解決方案。

1 Web應用框架研究

1.1 MVC設計模式

MVC架構是許多交互和界面系統的構成基礎,其核心是實現系統不同層次間的松散耦合。它把一個應用任務的輸入、處理、輸出流程按照模型、視圖、控制器的方式進行分離,同時各個模塊之間相互獨立,提高了靈活性和可重用性。

在.NET平臺下,ASP.NET提供了一個很好的實現MVC設計模式的類似環境。開發者通過在ASPX頁面中結合Ext JS框架開發用戶接口來實現視圖;控制器的功能在邏輯功能后臺代碼(.aspx.cs/.ashx.cs)中實現;模型通常對應于系統的業務應用部分。

1.2 Ext JS框架

Ext JS是一個用JavaScript編寫、與后臺技術無關的前端Ajax框架,可以用來開發富有華麗外觀的富客戶端應用,能使B/S應用更加具有活力。Ext JS融入了面向對象的概念,讓開發者可以像理解其他面向對象語言一樣,靈活地運用JavaScript語言,在支持面向對象的同時還提供了豐富的跨瀏覽器UI組件,靈活采用XML/JSON數據源進行開發,使得服務端表示層的負荷真正減輕,從而實現客戶端的MVC應用。

1.3 Spring.NET框架

Spring.NET是一個開源的應用程序框架,它能夠提供寬廣范圍的功能,例如依賴注入、面向方面編程(AOP)、ORM類庫整合等。依賴注入功能由框架提供的一種輕量級的控制反轉IoC容器來完成。該容器改變了傳統的在程序中強制聲明對象的創建方法,實現了一種配置式的對象管理方式,降低了類之間的耦合度。AOP為業務對象提供面向方面編程(AOP)的支持,完善了IoC容器的功能,為創建企業應用和使用聲明式服務奠定了堅實的基礎。ORM類庫整合為時下流行的ORM類庫 (如NHibernate等)提供了一個整合層,其中包含聲明式事務管理等諸多功能。

1.4 NHibernate框架

NHibernate是一個基于.NET的針對關系型數據庫的對象關系映射ORM(Object/Relation Mapping)框架。對象關系映射ORM的最主要目的是為了解決關系型數據庫與面向對象編程技術中面向對象的類與數據庫的表不是一一對應的“阻抗不匹配”問題。NHibernate從數據庫底層來持久化.NET對象到關系型數據庫,它封裝了底層的數據庫SQL操作,上層應用程序不需要知道數據庫管理系統的類型、數據表的結構以及訪問方法。當對象的模型不變,而只改變數據庫管理系統或者改變數據表的結構時,則只須修改相應的NHibernate映射文件和配置文件,不需要對程序代碼進行大的修改,因而使得應用程序具有較好的可移植性。

2 Web應用框架設計

傳統的Web應用系統中,通常將系統劃分為Web表示層、業務應用層和數據層3個部分。采用MVC設計模式的Web應用系統,表示層被細分為視圖層和控制器層,模型則通常對應系統的業務應用部分。在業務應用層將表示層、業務邏輯與數據訪問進行分離,細分為業務邏輯層接口、業務邏輯層、數據訪問接口層和數據訪問層、實體層。Web表示層只依賴于業務邏輯層接口和實體層,即在表示層由控制器調用業務邏輯層接口定義的方法,并處理返回的實體層數據;業務邏輯層實現了業務邏輯層接口,同時依賴于數據訪問接口層和實體層,這一層實際是調用數據訪問接口層中的方法組合為業務,并處理數據訪問接口層返回的實體層數據;數據訪問接口層定義了訪問數據的底層方法;數據訪問層實現接口中的所有方法;實體層負責整個系統中數據的封裝及傳遞,定義的對象實體只有屬性沒有方法。系統應用框架如圖1所示。

本框架設計中,視圖層由ASPX/HTML頁面結合Ext JS框架完成界面顯示和Ajax請求;控制器功能在.ashx.cs文件中實現,其主要負責用戶請求和后臺業務層的中轉、接收并分析用戶請求,調用業務邏輯層類完成請求,再分發給用戶。數據庫訪問層采用NHibernate框架將關系數據庫的數據映射成對象,實現以面向對象的方式操作數據庫。系統中的各層之間借助于Spring.Net框架的IoC容器以松耦合的方式組合在一起,即表示層的控制器訪問業務邏輯層時,調用的是業務邏輯層接口IBLL,具體的業務對象實現則由Spring.NET框架的IoC容器動態注入。同理,業務邏輯層的實現調用的是數據訪問層的接口IDAL,同樣由IoC容器注入具體的數據訪問層實現。

綜上所述,本框架具備如下優點:

(1)將Web開發的三層架構進行細分,結構清晰,功能完備,使得系統的開發更加有條理、更加便捷。

(2)對于大型的企業應用,前端頁面顯示復雜,共享代碼較多,使用MVC模式分離顯示與業務邏輯就使得共享代碼便于管理和修改,降低了依賴性。

(3)采用富客戶端Ext JS框架。將顯示邏輯從服務器端轉移到客戶端,服務器端僅負責業務邏輯的處理和運算,并把處理的結果以純數據的形式發送給客戶端,由客戶端負責具體的顯示和交互,解決了以往Web應用系統性能低下、效率低、開發出的界面千篇一律等問題。

(4)框架面向接口編程,充分利用Spring.NET依賴注入特性,改變了傳統的在程序中強制聲明對象的創建方法,實現了一種配置式的對象管理方式,降低了層次之間的耦合度。

(5)將數據訪問從業務邏輯中分離出來,采用 NHibernate對象關系映射框架從數據庫底層來持久化.NET對象到關系型數據庫,無需采用內嵌SQL語句的方式完成數據訪問,提高了系統的可移植性。

3 采集系統軟件設計

3.1 系統功能模塊設計

用電信息采集系統是對電力用戶的用電信息進行采集、處理和實時監控的系統,軟件功能可歸納為系統管理、參數設置、終端控制和數據查詢4大模塊。軟件模塊如圖2所示。

3.2 數據庫設計

用電信息采集系統包含的數據實體根據不同功能可分為管理類實體、數據采集類實體和電網模型類實體3種類型,每個實體包含一個或者多個數據表。管理類實體主要包括與系統管理相關的實體,如系統功能、管理部門、崗位、操作員、操作員分組、用戶、用戶組、角色等;數據采集類實體主要指電能信息數據實體以及和電能信息數據采集相關的實體,如電表信息、終端信息、終端配置參數、終端控制狀態、前置機、電能量、模擬量、任務配置、異常日志等;電網模型類實體主要指與電網設備和電網拓撲相關的各種實體,如區域、變電站、電壓等級、變壓器、線路、開關等。

4 基于Web應用框架的采集系統實現

在Visual Studio 2008中搭建起整個項目的解決方案,命名為FK。通過建立不同的工程來劃分層,每一個工程使用不同的命名空間。FK.Web實現Web表示層;FK.IBLL實現業務邏輯層接口;FK.BLL實現業務邏輯層;FK.Model實現實體層;FK.IDAL實現數據訪問層接口;FK.NHDAL通過NHibernate實現數據訪問層;FK.Controler實現業務邏輯的調用。

下面以系統管理模塊中添加終端設備操作的實現為例說明基于.NET的Web應用框架在用電信息采集主站系統中的具體應用,其中涉及的業務邏輯包括將終端信息存儲入庫以及向前置機下發終端配置信息兩部分,UML類圖如圖3所示。

(1)實體層實現

實體層在FK.Model.DeviceTable類中實現,其中定義的對象實體只有屬性沒有方法。主要包括終端設備相關屬性信息。部分代碼如下:

(2)數據訪問層實現

數據訪問層使用Spring.NET提供的HibernateDao-Support作為基類,通過該基類的HibernateTemplate對象來完成數據訪問操作。HibernateTemplate封裝了對象持久化的CRUD等基本操作 (底層的數據庫訪問由NHibernate來具體實現)。這里由DeviceTableDao類來完成終端設備信息的存儲入庫。

數據庫訪問DeviceTableDao類繼承于接口IDeviceTableDao和HibernateDaoSupport類。HibernateDaoSupport類的HibernateTemplate屬性通過Spring.NET IoC容器從外部注入,同時還通過IoC容器向HibernateTemplate中注入SessionFactory,然后在Spring.NET中聲明一個SessionFactory的對象。配置文件Web.config部分注入代碼如下:

(3)業務邏輯層實現

業務邏輯層通過PreServerCommManage類和Device TableManage類分別實現向前置機下發終端配置信息以及將終端信息存儲入庫等業務邏輯。在業務邏輯層的具體實現中,用到了數據訪問接口IDeviceTableDao屬性,通過Spring.NET IoC注入具體的數據訪問實現,配置文件Web.config注入代碼如下:

(4)視圖層實現

視圖層主要由HTML結合Ext JS框架實現,其負責接收用戶輸入的終端信息,通過Ext.Ajax實現與控制層的通信,并顯示控制層的業務邏輯調用執行結果,關鍵代碼如下:

(5)控制層實現

控制層通過視圖層獲取終端設備的輸入數據,并調用業務邏輯層方法完成具體的業務邏輯,這里調用的是業務邏輯接口,具體的業務邏輯層通過Spring.NET IoC容器注入予以實現。實現文件Device.ashx.cs終端添加入庫操作關鍵代碼如下:

綜上所述,以系統設備管理模塊中添加終端設備操作為例,從系統各層次詳細分析了基于.NET平臺的Web應用框架在用電信息采集系統中的應用。

本文采用ExtJS+ASP.NETMVC+Spring.NET+NHibernate等技術構建多層Web應用程序框架,并分析了該框架在用電信息采集系統主站中的具體應用。本框架面向接口編程,具有松耦合性以及很強的可擴展性,比較適合用電信息采集系統多應用平臺的開發。Spring.NET IoC作為整個框架的容器,充分利用其依賴注入的特性,實現了組件間的松耦合;NHibernate的本質是一個提供數據庫服務的中間件,它的使用使整個框架更面向對象,同時支持多數據庫;ASP.NET MVC一改以往Web Form的方式,使界面和后臺代碼完全分開;Ext Js則創建出更美觀、用戶體驗更好的界面,能夠很方便地完成ASP.NET Web Form很難完成的功能和界面。

[1]陳瑋,沈雷.基于 MVC模式的 Web應用框架[J].微計算機信息,2009(15):216-218.

[2]李園,陳世平.MVC設計模式在ASP.NET平臺中的應用[J].計算機工程與設計,2009,30(13):3180-3184.

[3]任偉,林曉東.基于 Spring框架和Ext JS的藥品庫房管理系統實現[J].計算機工程與設計,2009,30(18):4312-4316.

猜你喜歡
數據庫信息系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
主站蜘蛛池模板: 青青青视频免费一区二区| 精品三级在线| 五月天久久婷婷| 国产精品人莉莉成在线播放| 一级香蕉人体视频| 国产浮力第一页永久地址| 老色鬼久久亚洲AV综合| 精品国产黑色丝袜高跟鞋| 欧洲在线免费视频| 女同国产精品一区二区| 久久国产热| 99在线视频网站| 中国国产一级毛片| 色男人的天堂久久综合| 天天做天天爱天天爽综合区| 这里只有精品在线| 国产二级毛片| 夜夜操天天摸| 亚洲最黄视频| 波多野结衣一区二区三区四区视频| 日韩精品一区二区三区大桥未久| 2021天堂在线亚洲精品专区| 国产嫖妓91东北老熟女久久一| 久久精品日日躁夜夜躁欧美| 亚洲色无码专线精品观看| 亚洲制服丝袜第一页| 亚洲精品人成网线在线| 亚洲天堂精品视频| 欧美精品v| 免费高清毛片| 欧美亚洲日韩中文| 中文字幕啪啪| 无码有码中文字幕| 特级欧美视频aaaaaa| 成人综合在线观看| 国产亚洲精品va在线| 2020亚洲精品无码| 国产成人综合在线视频| 欧美日韩第二页| 国产91精品调教在线播放| 国产精欧美一区二区三区| 色综合色国产热无码一| 亚洲水蜜桃久久综合网站| 亚洲综合色在线| h视频在线观看网站| 久久久久久久97| 欧美一级在线看| 人妻丝袜无码视频| 亚洲三级a| 亚洲成人精品在线| 日韩高清中文字幕| 国产在线精彩视频二区| 国产一在线观看| 亚洲欧美日韩色图| 日韩中文字幕免费在线观看| 日韩在线永久免费播放| 114级毛片免费观看| 欧美成人精品一级在线观看| 国产在线欧美| 午夜精品福利影院| 伊人久久福利中文字幕| 亚洲高清日韩heyzo| 国产91视频免费| 99视频精品全国免费品| 亚洲福利视频网址| 欧美中文字幕在线二区| 日韩国产黄色网站| 岛国精品一区免费视频在线观看| 91区国产福利在线观看午夜 | 人妻无码中文字幕一区二区三区| 女人18毛片一级毛片在线 | 国产成人精品18| 亚洲爱婷婷色69堂| 伊人久久大香线蕉综合影视| 日本不卡视频在线| 国产一级毛片高清完整视频版| 国产最新无码专区在线| 亚洲视频无码| 一本综合久久| 欧美无专区| 亚洲男人天堂网址| 亚洲精品欧美日韩在线|