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

基于開源框架的終端運(yùn)維管理系統(tǒng)的設(shè)計(jì)

2010-06-07 02:04:12方鐘亮
電視技術(shù) 2010年7期
關(guān)鍵詞:頁面系統(tǒng)管理

方鐘亮

(昆山市廣播電視臺(tái) 網(wǎng)絡(luò)中心,江蘇 昆山 215300)

1 引言

隨著信息技術(shù)的發(fā)展,有線電視網(wǎng)絡(luò)運(yùn)營商大都建立起了如BOSS,OA等運(yùn)維管理系統(tǒng)[1],但是對于某些設(shè)備資源,包括收費(fèi)計(jì)算機(jī)終端、光纖管道、節(jié)點(diǎn)機(jī)房的運(yùn)維管理缺乏一個(gè)有效的信息化管理平臺(tái),這使得運(yùn)營商在設(shè)備資源管理中經(jīng)常重復(fù)作業(yè),無法進(jìn)行精確統(tǒng)計(jì)和合理部署。筆者介紹了基于Struts2,Spring和Hibernate開源框的終端運(yùn)維管理系統(tǒng)設(shè)計(jì),實(shí)現(xiàn)了面向終端運(yùn)維的信息化統(tǒng)一管理平臺(tái)。

2 系統(tǒng)設(shè)計(jì)

2.1 系統(tǒng)功能設(shè)計(jì)

根據(jù)在終端運(yùn)維工作中涉及的內(nèi)容,系統(tǒng)在功能上的總體設(shè)計(jì)如圖1所示。系統(tǒng)包括運(yùn)維記錄管理、終端設(shè)備管理、IP地址管理、文件下載管理和機(jī)構(gòu)設(shè)置管理。系統(tǒng)的訪問分為普通用戶和管理員,普通用戶只能對上述功能的記錄信息進(jìn)行查看和搜索,管理員則可以進(jìn)行記錄的增加、刪除和編輯功能,普通用戶和管理員之間可以通過登錄、注銷進(jìn)行切換。

2.2 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)

系統(tǒng)的結(jié)構(gòu)如圖2所示,由表示層、服務(wù)層和持久層組成,表示層用于處理系統(tǒng)數(shù)據(jù)和用戶之間的交互和數(shù)據(jù)圖表的顯示。服務(wù)層完成系統(tǒng)具體事務(wù)的托管處理。持久層可以實(shí)現(xiàn)系統(tǒng)和數(shù)據(jù)庫之間的訪問管理。

表示層基于Struts2框架。Struts2是Apache Software Foundation下設(shè)的一個(gè)開源項(xiàng)目,是基于MVC模式的一個(gè)Java輕量級Web應(yīng)用程序框架,支持通過攔截器來處理用戶請求[2]。表示層通過JSP和Struts2標(biāo)簽等技術(shù)直接將數(shù)據(jù)展示于用戶IE界面。用戶的HTTP請求會(huì)通過核心控制器FilterDispatcher根據(jù)struts.xml配置文件的定義分發(fā)到對應(yīng)的Action類,Action類則通過調(diào)用服務(wù)層接口來完成相應(yīng)業(yè)務(wù)處理。Action類的函數(shù)執(zhí)行后返回字符串值,并在配置文件的屬性中找到對應(yīng)值來確定下一步的相應(yīng)動(dòng)作,如跳轉(zhuǎn)至指定頁面或繼續(xù)執(zhí)行另一個(gè)Action動(dòng)作。

服務(wù)層基于Spring框架。Spring是一個(gè)輕量級的控制反轉(zhuǎn)(Inversion of Control,IoC)技術(shù)的容器框架,Spring實(shí)現(xiàn)了J2EE框架中所倡導(dǎo)的由容器實(shí)現(xiàn)對象生命周期管理的功能[3]。通過Web.xml文件的配置,IoC容器在應(yīng)用服務(wù)器啟動(dòng)時(shí)得以初始化。配置文件applicationContext.xml中注冊定義了數(shù)據(jù)源、會(huì)話工廠、服務(wù)層接口和數(shù)據(jù)接口對象(Data Access Object,DAO),各管理類都以Bean的形式進(jìn)行注冊,并同容器一起初始化。系統(tǒng)中各接口類在被調(diào)用現(xiàn)場無需進(jìn)行對象初始化,而是通過依賴注入的方式由IoC容器提供,這樣就能實(shí)現(xiàn)軟件設(shè)計(jì)中各組件之間的“松散耦合”[4]。

持久層基于Hibernate框架,Hibernate是一種開源持久層框架,能夠通過在數(shù)據(jù)庫表和簡單舊式Java對象類(Plain Ordinary Java Objects,POJO)之間建立對象和關(guān)系數(shù)據(jù)庫之間映射(Object Relational Mapping,ORM)來實(shí)現(xiàn)對數(shù)據(jù)庫的面向?qū)ο蟛僮鳌ibernate的查詢語句HQL是對SQL的面向?qū)ο髷U(kuò)展。Hibernate將數(shù)據(jù)庫中的每張表通過定義classname.hbm.xml配置文件映射到相應(yīng)的POJO對象類,配置文件的類名稱需和POJO類名稱相同,Hibernate通過在DAO接口中使用HQL語句來實(shí)現(xiàn)POJO對象和數(shù)據(jù)庫之間的訪問。Hibernate的應(yīng)用極大簡化了J2EE持久層的開發(fā)工作[5]。

3 關(guān)鍵技術(shù)說明

3.1 分頁處理

Struts2標(biāo)簽庫中的iterator標(biāo)簽用于頁面迭代的輸出集合元素,但目前iterator標(biāo)簽還無法處理大批量數(shù)據(jù)的分頁顯示。筆者在業(yè)務(wù)邏輯控制模塊中實(shí)現(xiàn)分頁控制,處理流程如圖3所示。首先,通過DAO接口查詢符合條件的所有記錄,并以集合的形式存儲(chǔ)在緩存中;其次,通過計(jì)算獲取單個(gè)頁面需要顯示的記錄在查詢集合中的起始位置和終止位置,并由此在內(nèi)存中截取生成一個(gè)新子集;最后,將新生成的集合一并提交給iterator標(biāo)簽予以顯示。圖中 pageIndex為頁面指針(初始值為1),pageSize為頁面顯示記錄數(shù)量,listSize為查詢集合中所有記錄數(shù)量,p為每次顯示記錄在查詢集合中的起始指針,e為結(jié)尾指針。

上下翻頁控制中上、下頁指針值prePage和nextPage的計(jì)算公式為

式中:pageNum代表總頁數(shù),可根據(jù)記錄數(shù)和頁面大小來計(jì)算,在此不作介紹。翻頁過程中,上、下頁指針的值被賦給pageIndex,然后執(zhí)行圖3所示的流程來實(shí)現(xiàn)數(shù)據(jù)分頁顯示。

在業(yè)務(wù)邏輯控制模塊中進(jìn)行分頁處理,相對于其他模塊更增加了系統(tǒng)的解耦合度,對表示層的頁面控制也更加靈活。

3.2 批量數(shù)據(jù)處理

大批量數(shù)據(jù)的處理涉及到系統(tǒng)的效率和穩(wěn)定性,在持久層處理批量數(shù)據(jù)的方法通常有:

1)通過JDBC來執(zhí)行原始SQL語句,此種方法最直接高效,但缺少面向?qū)ο蟮臄?shù)據(jù)庫管理,在修改數(shù)據(jù)時(shí)無法保證緩存中Java對象與數(shù)據(jù)庫中數(shù)據(jù)的一致性,不利于代碼的移植和系統(tǒng)的擴(kuò)展。

2)通過循環(huán)語句調(diào)用ibernateTemplate對象的Save,SaveorUpdate和Delete方法來實(shí)現(xiàn)批量處理數(shù)據(jù)。Hibernate對象的一級緩存只是構(gòu)建在內(nèi)存中,在數(shù)據(jù)量過大時(shí)多次調(diào)用Save接口可能會(huì)導(dǎo)致內(nèi)存溢出,需要及時(shí)刷新一級緩存或是建立二級緩存。同時(shí)在更新或刪除數(shù)據(jù)時(shí)每次還要執(zhí)行查詢語句,這種方法效率低下,且容易導(dǎo)致系統(tǒng)出錯(cuò)。

3)利用Hibernate3中提供的用于批量數(shù)據(jù)處理的HQL語句接口。其處理方式代碼如下:

以上的處理方式無須對每個(gè)記錄進(jìn)行查詢?nèi)〕鲈傩薷谋4妫苊饬藘?nèi)存溢出,并保持對象數(shù)據(jù)的一致性,在性能上和直接用JDBC進(jìn)行操作相差無幾。文中的系統(tǒng)設(shè)計(jì)采用第3種批量處理方式。

3.3 統(tǒng)計(jì)數(shù)據(jù)圖形化

系統(tǒng)采用JFreeChart技術(shù)進(jìn)行統(tǒng)計(jì)數(shù)據(jù)的圖形化顯示。JFreeChart是基于Java的開源圖表軟件開發(fā)包,可融入所有Java程序中。JFreeChart可以生成如餅圖、柱狀圖和折線圖等多種統(tǒng)計(jì)圖表,并以JPEG或PNG文件格式保存。用JFreeChart生成統(tǒng)計(jì)圖表的流程為:1)數(shù)據(jù)查詢。服務(wù)器接受用戶客戶端的查詢請求,調(diào)用接口查詢數(shù)據(jù)庫原始數(shù)據(jù),并將數(shù)據(jù)返回至業(yè)務(wù)邏輯控制模塊,再通過分析計(jì)算得到用戶需要的統(tǒng)計(jì)數(shù)據(jù)。2)創(chuàng)建數(shù)據(jù)集。通過DefaultCategoryDataset類創(chuàng)建圖像數(shù)據(jù)集DataSet對象,將統(tǒng)計(jì)數(shù)據(jù)賦予數(shù)據(jù)集。此時(shí)數(shù)據(jù)集成為圖表的數(shù)據(jù)源。3)創(chuàng)建JFreeChart對象。通過ChartFactory工廠類來創(chuàng)建JFreeChart對象,其數(shù)據(jù)源指向DataSet,并設(shè)置圖表對象的顏色、標(biāo)題和字體等。4)圖像生成顯示。通過ServletUtilites類在服務(wù)端將圖表保存為PNG格式的臨時(shí)文件,并傳送至客戶端瀏覽器顯示[6]。

圖4是2009年昆山廣電全年運(yùn)維記錄的查詢統(tǒng)計(jì)結(jié)果。系統(tǒng)通過Web的方式將動(dòng)態(tài)數(shù)據(jù)以圖表形式顯示,使用戶一目了然,可以直接觀察數(shù)據(jù)變化趨勢。

4 系統(tǒng)應(yīng)用

終端運(yùn)維管理系統(tǒng)在企業(yè)管理中的部署應(yīng)用如圖5所示,系統(tǒng)通過對運(yùn)維施工的詳細(xì)記錄并進(jìn)行類別統(tǒng)計(jì)分析,向企業(yè)管理者提供各種明確的運(yùn)維信息指標(biāo),管理層可及時(shí)有針對性地調(diào)整管理策略、排除隱患,實(shí)現(xiàn)更為有效的運(yùn)營管理。

從圖4來看,票據(jù)打印和業(yè)務(wù)軟件的維修施工在所有運(yùn)維種類中比例較高,具有代表性,涉及打印機(jī)硬件設(shè)備的維修和職員對業(yè)務(wù)軟件誤操作的更正指導(dǎo)。針對這些問題,可逐步進(jìn)行打印設(shè)備的更新和員工的業(yè)務(wù)操作培訓(xùn)。其效果可以從昆山廣電2009年各季度運(yùn)維統(tǒng)計(jì)(表1)中體現(xiàn),自一季度至四季度兩種類型運(yùn)維比例分別從53.1%和28.1%逐季度降至13.0%和21.7%。這說明針對性的措施使得兩種故障發(fā)生比例明顯減小。

表1 季度運(yùn)維統(tǒng)計(jì)

5 小結(jié)

介紹了終端運(yùn)維管理系統(tǒng)基于Struts2,Spring和Hibernate框架的開發(fā)設(shè)計(jì)。3種開源框架的整合符合J2EE分層設(shè)計(jì)的理念。同時(shí)系統(tǒng)利用開源JFreeChart實(shí)現(xiàn)了統(tǒng)計(jì)數(shù)據(jù)的圖形化展示。系統(tǒng)具有較高的可擴(kuò)展性和良好的可維護(hù)性。終端運(yùn)維管理系統(tǒng)實(shí)現(xiàn)了對運(yùn)營終端的有效信息化管理,提供了一個(gè)面向設(shè)備運(yùn)維的基礎(chǔ)管理平臺(tái)。在后續(xù)的開發(fā)中將逐步把廣電網(wǎng)絡(luò)運(yùn)營所涉及的光纖管道和節(jié)點(diǎn)機(jī)房的管理融入到平臺(tái)中。

[1]方鐘亮.昆山廣電BOSS系統(tǒng)的策略管理建設(shè)[J].電視技術(shù),2009,33(3):52-53.

[2]Apache Software Foundations.About apache struts2[EB/OL].[2009-10-01].http://struts.apache.org/2.0.11/.2009-10-1.

[3]Spring Source.Spring documentation[EB/OL].[2009-10-01].http://www.springsource.org/documentation.

[4]楊少波.J2EE項(xiàng)目實(shí)訓(xùn)Spring框架技術(shù)[M].北京:清華大學(xué)出版社,2008.

[5]王軍豪,彭巖.Hibernate+Struts+Spring整合技術(shù)在電子政務(wù)中的應(yīng)用[J].計(jì)算機(jī)工程與設(shè)計(jì),2008,29(6):1409-1412.

[6]朱賀新,穆榮,盧建軍.JFreeChart的應(yīng)用開發(fā)與改進(jìn)[J].西安科技大學(xué)學(xué)報(bào),2008,28(4):789-792.

猜你喜歡
頁面系統(tǒng)管理
大狗熊在睡覺
棗前期管理再好,后期管不好,前功盡棄
Smartflower POP 一體式光伏系統(tǒng)
刷新生活的頁面
WJ-700無人機(jī)系統(tǒng)
ZC系列無人機(jī)遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
“這下管理創(chuàng)新了!等7則
雜文月刊(2016年1期)2016-02-11 10:35:51
人本管理在我國國企中的應(yīng)用
管理的另一半
主站蜘蛛池模板: 国产午夜在线观看视频| 国产精品主播| 呦女亚洲一区精品| 黑色丝袜高跟国产在线91| 精品亚洲欧美中文字幕在线看| 在线免费不卡视频| 亚洲高清无码久久久| 超碰色了色| 国产超薄肉色丝袜网站| 国产91无码福利在线| 天堂网亚洲系列亚洲系列| 国产无码制服丝袜| 日本欧美视频在线观看| 蜜桃臀无码内射一区二区三区| 久久中文字幕2021精品| 白丝美女办公室高潮喷水视频| 成年人久久黄色网站| 最新无码专区超级碰碰碰| 国产精品污污在线观看网站| 日韩欧美亚洲国产成人综合| 国产精品久久久久鬼色| 国产SUV精品一区二区6| 蜜芽一区二区国产精品| 亚洲精品无码不卡在线播放| 另类综合视频| 老司机久久精品视频| 国产成人一级| 91在线精品麻豆欧美在线| 亚洲最大看欧美片网站地址| 99热这里只有精品国产99| 亚洲无码高清视频在线观看| 国产无遮挡裸体免费视频| 国产第一页第二页| 国产精品欧美激情| 精品国产成人a在线观看| 欧美成a人片在线观看| 国产一级视频久久| 久热精品免费| 久久6免费视频| 婷婷丁香在线观看| 亚洲av综合网| 午夜视频在线观看免费网站| 成人自拍视频在线观看| 永久成人无码激情视频免费| 色噜噜久久| 无码av免费不卡在线观看| 99久久精品美女高潮喷水| 日韩a级毛片| 欧美69视频在线| 国内精品免费| 国产久操视频| 无码免费视频| 久久永久免费人妻精品| 乱人伦视频中文字幕在线| 国产特级毛片| 91成人在线免费视频| 免费福利视频网站| 亚洲无码A视频在线| 国产91九色在线播放| 欧美日韩国产成人在线观看| 成人免费午间影院在线观看| 51国产偷自视频区视频手机观看| 亚洲欧洲日韩久久狠狠爱| 这里只有精品在线| 综合社区亚洲熟妇p| 国产在线视频自拍| 国内精品久久人妻无码大片高| 国产伦片中文免费观看| 亚洲免费福利视频| 激情亚洲天堂| 成人无码区免费视频网站蜜臀| 亚洲国产欧美国产综合久久 | 91亚洲精选| 亚洲区一区| 精品国产美女福到在线直播| 成年av福利永久免费观看| 国产无遮挡猛进猛出免费软件| 天堂在线视频精品| 精品国产中文一级毛片在线看 | 国产鲁鲁视频在线观看| 欧美日韩一区二区在线播放| 天天摸天天操免费播放小视频|