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

基于JAVAEE網站內容管理系統的架構設計

2012-08-14 00:53:44王海燕
電子設計工程 2012年12期
關鍵詞:數據庫內容用戶

王海燕,吳 潔

(1.商丘師范學院 計算機與信息技術學院,河南 商丘 476000;2.河南信息工程學校 河南 鄭州 450000)

隨著Internet的豐富和發展,促成了數字化信息內容的迅速成長。但同時很多網站卻不能迅速跟進大量信息衍生及業務模式變革的腳步,尤其是遇到網站擴充或整合的時候,需要花費很多時間和精力去更新信息,人們的工作變得異常復雜,而網站內容管理系統的出現有效的解決了這個問題。這里我們對內容管理系統的現狀和存在的問題進行了闡述,并給出了架構設計。

1 課題背景及意義

處在科技高速發展的時代,網絡技術給人們的生活和工作帶來了深刻的變革,信息化、網絡化、數字化正滲透到社會的各個角落,企業對于通過互聯網來收集、處理和傳遞數據的依賴性越來越強。面對越來越大的信息處理量,我們也面臨著許多問題,如建站困難、大量信息堆積及信息更新不及時,服務功能不健全、手工處理效率低下、發布的信息無時效價值;改版工作量大,系統的擴展能力差等。

對于上述問題,如何來有效管理各種數據信息和維護這些信息內容,全面提升管理水平,真正達到快捷、準確、實時的發布信息,解決用戶網站建設與信息發布中常見的問題,以適應各級企業不斷增長的需求,就成為一個耗費人力、物力、時間的工作,基于這樣的目的,一套專業的網站內容管理系統應運而生。

新一代的內容管理平臺的發展應著重以下幾個方面:

1)強健的架構、良好的集成擴展性,方便進行維護和管理

新一代的內容管理系統必須基于優良穩定的體系結構,具有更高的安全性,易于集成和功能的擴展,可以提供方便的管理維護功能或工具,并可以快速部署[1]。

2)系統管理和內容業務分離,更強的業務獨立性和靈活性

網站內容管理的復雜度和靈活性要大大高于一般的業務系統,因此網站內容管理必須能夠提供更強的業務獨立性和靈活性[2]。

3)表現和內容分離,用戶體驗和內容質量的和諧統一

內容表現和內容本身需要盡可能的獨立,用戶無需過多的關注內容表現形式的制作,由系統提供預設可選的模板來展現內容[3]。

2 系統架構設計

該內容管理系統使用了標準的三層體系結構,在框架設計中需要考慮很多問題:怎樣建立用戶接口;在哪里處理業務邏輯;怎樣持久化數據;怎樣設計能松散耦合還能靈活改變,應用程序如何做各種級別的業務處理。為了使系統的各個應用層保持一致,讓每個層在一種松散耦合的方式彼此作用而不用考慮低層的技術細節,為此選擇一個主流技術架構Struts2+freemarker+Spring2+Hibernate3,將應用功能分成表現層、邏輯層和數據層,Struts2+freemarker主要是解決表現層的問題,Spring主要是解決應用邏輯層問題。Hibernate主要是解決數據庫持久的問題。系統完整的處理過程如圖1所示。

圖1 三層架構處理過程Fig.1 Three layer software architecture

這是一種先進的協同應用程序開發模型,各層是邏輯的,而不是實際的物理上的,這種三層架構具有很多優勢:

1)安全性

通過應用三層結構,使中間邏輯應用層和前臺界面、后臺數據庫分開。利用功能層有效地隔離開表示層和數據層,未授權的用戶難以繞過功能層而利用數據庫工具或黑客手段非法地訪問數據層,這就為嚴格的安全管理奠定了堅實的基礎,整個系統的管理層次也更加合理和可控制[4]。

2)便于升級、維護

三層結構技術是一個基于組件的開發模式,是根據業務涉及的數據和處理流程、不同的行業特性設計成屬性、方法并獨立封裝,使業務工作對象化。當用戶需求發生變化時,只要修改相應的對象就可以了。

3)獨立性

合理地劃分三層結構的功能,使之在邏輯上保持相對獨立性,從而使整個系統的邏輯結構更為清晰,能提高系統和軟件的可維護性和可擴展性[5]。

在該內容關系系統中,第一層是表示層,作為應用的用戶接口部分,它擔負著用戶與應用間的對話功能。中間邏輯層由功能對象和應用邏輯組成。它提供定義良好的接口,使表示層可以方便地存取數據,從而適應于服務中的各種請求,第三層是數據層,封裝了對數據庫的訪問功能。

2.1 表現層設計

文中內容管理系統的視圖層提供給用戶視覺上的界面,負責面向最終用戶的信息發布,與用戶進行交互。用戶輸入的信息通過該層傳輸給邏輯層,并負責邏輯層提取數據呈現給用戶。Struts2可以非常簡單地使用FreeMarker模板作為視圖技術,對于傳統的JSP頁面而言,FreeMarker是一個絕佳的替代方案。

展示數據的實現過程是:由java程序準備好要顯示的數據,由FreeMarker生成頁面[6],通過模板顯示準備的數據如圖2所示。

圖2 Freemarker流程圖Fig.2 Freemarker flow chart

為了在Struts2應用中使用FreeMarker模板技術,我們需要在Struts.xml文件中進行配置。雖然FreeMarker自己提供了一些FTL指令,可以對數據模型中的數據進行迭代輸出,也提供了一定的條件判斷能力。但Struts2提供的標簽遠不止于此,它還提供了一系列的表現標簽,例如form標簽等。因此,還是需要在FreeMarker模板中使用Strut2標簽.

2.2 業務邏輯層的設計

在內容管理系統的持久層的上方是業務邏輯層,在該層中主要負責企業信息內容的業務管理,包括欄目、新聞信息等。

業務邏輯層在代碼中主要體現在Service層,Service層大多時候都是簡單的調用DAO里面的方法,但沒有它又不行,因為有些復雜的業務邏輯就需要在Service層完成,否則易造成業務代碼和底層的代碼混亂,對以后功能的修改帶來災難性的影響,而且Service層也是Spring實現事務控制的地方。

Service層設計的時候首先需要對上層使用到的對象定義一系列接口,所有與業務層有交互的代碼都應該通過這些接口實現。對于由Spring負責管理的對象,可以通過依賴注入加以實現。在Service層還不得不提到的一點就是 Spring處理的事務管理,Spring提供兩種事務處理的方法:聲明式事務和編程式事務。聲明式事務是借助于Spring AOP模塊來實現,是系統級的事務管理,在內容管理系統開發中也用到了該事務管理方法.另外在內容管理系統設計時還要額外注意事務邊界的劃分,例如在處理聲明式事務管理功能時,那就需要將事務控制在方法層面,這樣可以將多次的調用封裝在同一個事務之中.使用 Spring的聲明式事務管理,業務接口的方法就是事務的邊界。

2.3 數據庫持久層的設計

數據庫持久層的設計目標是為整個項目提供一個高層、統一、安全和并發的層設計的好壞很大程度上決定了是否能完成該項目。此時可以考慮采用數據持久層框架,本項目采用了Hibernate,它提供了數據訪問方法,能夠使其它程序數據持久機制,程序員避免手工編寫程序訪問數據持久層,使其專注于業務邏輯的開發,并且能夠在不同項目中重用映射框架,大大簡化了數據增、刪、改、查等功能的開發過程,同時又不喪失多層結構的天然優勢,集成延續JAVAEE特有的可伸縮性和可擴展性[6]。

3 結束語

內容管理系統數據庫表主要包含:用戶信息部分、權限部分、模板部分。在設計數據庫表時要遵守規范式的設計要求,已達到數據庫表設計的合理化。同時為了保證數據庫的一致性和完整性,要為數據庫表設計相應的關鍵字、識別、缺省等信息。Struts+Spring+Hibernate,實現了系統層次的松散耦合,框架把業務邏輯和持久性邏輯分開能減輕了開發人員從頭構建持久層代碼的精力,從而集中精力來處理邏輯問題,分層的另一大好處是,對日后系統的升級和維護帶來很大的好處。在分層的基礎上進一步實現是下一步的目標。

[1]熊文,方亮,張淑芳.三層web體系結構的特點與比較[J].計算機應用與研究,2006:61-63.XIONG Wen,FANG Liang,ZHANG Shu-fang.The characteristics and comparation of the three-tier web architecture[J].Application Research of Computers,2006:61-63.

[2]李發英,朱海濱.基于Struts+Hibernate的Web應用的設計與實現[J].計算機技術與發展,2009(4):91-94.LI Fa-ying,ZHU Hai-bin.Design and implementation of Web applications based on Struts+Hibernate[J].Technology and Development of Computers,2009(4):91-94.

[3]李邵平,彭志平.一種Web應用框架及其實現[J].計算機技術與發展,2009(8):117-119.LI Shao-ping,PENG Zhi-ping.An implementation of the Web application framework[J].Technology and Development of Computers,2009(8):117-119

[4]潘春華,李悅,唐茂元.基于Spring框架的北京林業大學圖書館門戶系統設計與實現[J].現代情報,2008(4):169-172.PAN Chun-hua,LI Yue,TANG Mao-yuan.The library portal system design and implementation of the Beijing Forestry University based on the spring framework[J].Modern Information,2008(4):169-172.

[5]徐博藝,姜麗紅,董理.一種基于J2EE的軟件架構的研究與應用[J].計算機應用研究,2006,23(9):146-148 XU Bo-yi,JIANG Li-hong,DONG Li.Research and application of a kind of software architecture based on J2EE[J].Application Research of Computers,2006,23(9):146-148.

[6]JIANG Zi-jing.The analysis and design of the content management system based on J2EE[EB/OL].(2009)http://www.dco88.com/p-199579990680.html

猜你喜歡
數據庫內容用戶
內容回顧溫故知新
科學大眾(2022年11期)2022-06-21 09:20:52
數據庫
財經(2017年2期)2017-03-10 14:35:35
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
主要內容
臺聲(2016年2期)2016-09-16 01:06:53
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
數據庫
財經(2016年15期)2016-06-03 07:38:02
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
主站蜘蛛池模板: 狠狠干综合| 超碰91免费人妻| 亚洲欧美日韩中文字幕一区二区三区| 美女一区二区在线观看| 97亚洲色综久久精品| 色一情一乱一伦一区二区三区小说| 国产精品午夜电影| 国产麻豆aⅴ精品无码| 在线亚洲精品自拍| 亚洲天堂成人在线观看| 青青国产视频| www.亚洲一区| 亚洲视频免| 伊人久久精品无码麻豆精品| 国产一在线观看| 欧美激情网址| 99视频在线观看免费| 全部无卡免费的毛片在线看| 国产精品视屏| 114级毛片免费观看| 91精品专区国产盗摄| 国产自在线拍| 在线观看91香蕉国产免费| 亚洲一区网站| 国产成人精品免费av| 国产亚洲欧美另类一区二区| 日韩无码视频专区| 蜜臀av性久久久久蜜臀aⅴ麻豆| 中文字幕在线欧美| 手机在线免费不卡一区二| 毛片视频网址| 97青草最新免费精品视频| 国产免费福利网站| 免费亚洲成人| 国产精品主播| 72种姿势欧美久久久大黄蕉| 91免费国产高清观看| 亚洲男人的天堂久久香蕉网| 一级高清毛片免费a级高清毛片| 精品无码一区二区三区电影| 日本在线欧美在线| 国产精品一区在线麻豆| 制服无码网站| 成人午夜网址| 国产AV无码专区亚洲精品网站| 高清国产在线| 99在线观看精品视频| 天堂久久久久久中文字幕| 久久精品国产精品青草app| 高清无码一本到东京热| 在线国产欧美| 日韩资源站| a毛片在线播放| 亚洲天堂网站在线| 色综合a怡红院怡红院首页| 97在线观看视频免费| 日本精品中文字幕在线不卡 | 欧美α片免费观看| 欧美日韩资源| 国内精自视频品线一二区| 2021亚洲精品不卡a| 色悠久久久| 久久国语对白| 国产原创第一页在线观看| 久久精品欧美一区二区| 免费黄色国产视频| 亚洲高清在线天堂精品| 久久国产精品嫖妓| 国产极品美女在线| 激情综合五月网| 亚洲色图综合在线| 亚洲综合色在线| 亚洲欧美另类久久久精品播放的| 久久亚洲AⅤ无码精品午夜麻豆| 亚洲视频免| 中文字幕无码中文字幕有码在线| 992Tv视频国产精品| 国产日本欧美在线观看| 亚洲综合狠狠| 久久精品免费看一| 午夜爽爽视频| 国产精品19p|