




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、濟(jì)南大學(xué)畢業(yè)設(shè)計(jì)濟(jì)南大學(xué)畢業(yè)設(shè)計(jì) 2 - 1 -畢業(yè)設(shè)計(jì)題 目面向服務(wù)架構(gòu)的內(nèi)容管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) 學(xué) 院XXXXXXXXXXXX專(zhuān) 業(yè)XXXXX班 級(jí)XXXXXX學(xué) 生XXXXXX學(xué) 號(hào)XXXXXXX指導(dǎo)教師XXXXX二XX年 六 月 十 日濟(jì)南大學(xué)畢業(yè)設(shè)計(jì) PAGE 64 -摘 要在高校信息化進(jìn)程中,內(nèi)容管理系統(tǒng)扮演者非常重要的角色,各種教學(xué)資源(課件、視頻、文檔、圖像等)的存儲(chǔ)、各個(gè)門(mén)戶網(wǎng)站、各個(gè)教學(xué)輔助系統(tǒng),歸根結(jié)底都是內(nèi)容管理系統(tǒng)。傳統(tǒng)的內(nèi)容管理系統(tǒng)都是單獨(dú)設(shè)計(jì)分散部署的,這樣會(huì)造成大量的資源浪費(fèi),本課題利用面向服務(wù)架構(gòu)設(shè)計(jì)實(shí)現(xiàn)一個(gè)內(nèi)容資源統(tǒng)一存放,WEB前端分布式部署的內(nèi)容管理系統(tǒng)
2、,從而提高存儲(chǔ)的效率,降低系統(tǒng)的耦合度,提高系統(tǒng)的靈活性。課題研究展開(kāi)的過(guò)程中,我學(xué)習(xí)了Java EE技術(shù)及相關(guān)知識(shí),包括JSP、EJB、Servlet、JDBC、XML、JNDI等技術(shù),以及Struts框架、Spring框架、Hibernate和Web Service技術(shù);對(duì)內(nèi)容管理系統(tǒng)進(jìn)行詳細(xì)的需求分析和設(shè)計(jì);學(xué)習(xí)面向服務(wù)的架構(gòu),實(shí)現(xiàn)分布式內(nèi)容管理系統(tǒng)的架構(gòu)設(shè)計(jì);內(nèi)容管理系統(tǒng)主要功能的實(shí)現(xiàn),包括權(quán)限管理、內(nèi)容資源的顯示、內(nèi)容資源的添加修改刪除等;學(xué)習(xí)ExtJs框架,從而簡(jiǎn)化前端界面的開(kāi)發(fā)。通過(guò)對(duì)本課題的研究和設(shè)計(jì),我鞏固了之前學(xué)過(guò)的知識(shí),如SSH框架,也學(xué)到了很多新知識(shí),如ExtJs框架、
3、CXF框架,設(shè)計(jì)出了預(yù)想中的系統(tǒng),基本實(shí)現(xiàn)了要求的功能。同時(shí)該系統(tǒng)也存在一定的不足,界面設(shè)計(jì)還不夠人性化,這一點(diǎn)有待改善。關(guān)鍵詞:內(nèi)容管理系統(tǒng);面向服務(wù)架構(gòu);SSH框架;ExtJs框架;CXF框架ABSTRACTIn the progress of informationization in University, the content management system play an important role. The storage of all teaching resources(Courseware, Videos, Files, and so on )contents re
4、sources、all portals、all assistant system of teaching, all the above fall into content management system in the final analysis. Traditional content management systems are designed solely and deployed dispersedly, which lead to tremendous wasting of resources.This project use SOA to implement a conten
5、t management system which store contents resources uniformly and deploy Front-ends of WEB distributedly . Then, the system will improve the efficiency of storage and reduce the degree of coupling,whats more , it will improve the flexibility of the system.With the expanding of the project, I study Ja
6、va EE technology and some knowledge about it,including JSP, EJB, Servlet, JDBC, XML, JNDI , Struts frame, Spring frame, Hibernate frame and Web Service technology; Do requirement analysis and system design in details, and do UML modeling about the content management system; Study SOA architecture, a
7、nd then realize the design of distributive system; Realize main functions of the system, including authority management, the display, add, delete, modify of contents resources.Through studying and designing the project, I consolidate the knowledge that I ever studied, such as SSH frame, and at the s
8、ame time, I learned a lot of new knowledge, such as ExtJs frame,CXF frame. What is the most important is that I design the expected system which realize requested functions. But there still exist some deficiencies,for example it is not enough in humanization,which need further improved. Keywords:Con
9、tent management system; SOA; SSH frame; ExtJs frame; CXF frame目錄TOC o 1-3 h z u HYPERLINK l _Toc294905626 摘 要 PAGEREF _Toc294905626 h I HYPERLINK l _Toc294905627 ABSTRACT PAGEREF _Toc294905627 h II HYPERLINK l _Toc294905628 1前言 PAGEREF _Toc294905628 h 1 HYPERLINK l _Toc294905629 1.1系統(tǒng)目的 PAGEREF _Toc
10、294905629 h 1 HYPERLINK l _Toc294905630 1.2系統(tǒng)背景 PAGEREF _Toc294905630 h 1 HYPERLINK l _Toc294905631 1.3系統(tǒng)使用對(duì)象及范圍 PAGEREF _Toc294905631 h 2 HYPERLINK l _Toc294905632 1.4論文的組織結(jié)構(gòu) PAGEREF _Toc294905632 h 3 HYPERLINK l _Toc294905633 2需求分析 PAGEREF _Toc294905633 h 4 HYPERLINK l _Toc294905634 2.1功能要求 PAGERE
11、F _Toc294905634 h 4 HYPERLINK l _Toc294905635 2.1.1學(xué)生功能要求 PAGEREF _Toc294905635 h 4 HYPERLINK l _Toc294905636 2.1.2教師功能要求 PAGEREF _Toc294905636 h 4 HYPERLINK l _Toc294905637 2.1.3管理員功能要求 PAGEREF _Toc294905637 h 5 HYPERLINK l _Toc294905638 2.2性能要求 PAGEREF _Toc294905638 h 6 HYPERLINK l _Toc294905639 2
12、.3可靠性要求 PAGEREF _Toc294905639 h 7 HYPERLINK l _Toc294905640 2.4出錯(cuò)處理要求 PAGEREF _Toc294905640 h 7 HYPERLINK l _Toc294905641 3概要設(shè)計(jì) PAGEREF _Toc294905641 h 8 HYPERLINK l _Toc294905642 3.1系統(tǒng)實(shí)現(xiàn)環(huán)境 PAGEREF _Toc294905642 h 8 HYPERLINK l _Toc294905643 3.2整體架構(gòu) PAGEREF _Toc294905643 h 8 HYPERLINK l _Toc29490564
13、4 3.3UML建模 PAGEREF _Toc294905644 h 8 HYPERLINK l _Toc294905645 3.4數(shù)據(jù)模型 PAGEREF _Toc294905645 h 10 HYPERLINK l _Toc294905646 3.4.1基本實(shí)體 PAGEREF _Toc294905646 h 10 HYPERLINK l _Toc294905647 3.4.2各模塊系統(tǒng) PAGEREF _Toc294905647 h 13 HYPERLINK l _Toc294905648 4詳細(xì)設(shè)計(jì) PAGEREF _Toc294905648 h 15 HYPERLINK l _Toc
14、294905649 4.1數(shù)據(jù)庫(kù)設(shè)計(jì) PAGEREF _Toc294905649 h 15 HYPERLINK l _Toc294905650 4.1.1數(shù)據(jù)庫(kù)命名規(guī)范 PAGEREF _Toc294905650 h 15 HYPERLINK l _Toc294905651 4.1.2對(duì)應(yīng)表設(shè)計(jì) PAGEREF _Toc294905651 h 15 HYPERLINK l _Toc294905652 4.2原型設(shè)計(jì) PAGEREF _Toc294905652 h 18 HYPERLINK l _Toc294905653 5技術(shù)框架 PAGEREF _Toc294905653 h 19 HYPE
15、RLINK l _Toc294905654 5.1ExtJs框架 PAGEREF _Toc294905654 h 19 HYPERLINK l _Toc294905655 5.2CXF框架 PAGEREF _Toc294905655 h 20 HYPERLINK l _Toc294905656 5.3SSH框架 PAGEREF _Toc294905656 h 20 HYPERLINK l _Toc294905657 5.4技術(shù)總結(jié) PAGEREF _Toc294905657 h 23 HYPERLINK l _Toc294905658 6編碼與測(cè)試 PAGEREF _Toc294905658
16、h 26 HYPERLINK l _Toc294905659 6.1服務(wù)端開(kāi)發(fā) PAGEREF _Toc294905659 h 26 HYPERLINK l _Toc294905660 6.1.1Model層開(kāi)發(fā) PAGEREF _Toc294905660 h 26 HYPERLINK l _Toc294905661 6.1.2Dao層開(kāi)發(fā) PAGEREF _Toc294905661 h 27 HYPERLINK l _Toc294905662 6.1.3Service層開(kāi)發(fā) PAGEREF _Toc294905662 h 27 HYPERLINK l _Toc294905663 6.1.4S
17、ervice.xml配置文件舉例 PAGEREF _Toc294905663 h 28 HYPERLINK l _Toc294905664 6.1.5Applicationcontext.xml配置文件舉例 PAGEREF _Toc294905664 h 29 HYPERLINK l _Toc294905665 6.2客戶端開(kāi)發(fā) PAGEREF _Toc294905665 h 29 HYPERLINK l _Toc294905666 6.2.1Model層開(kāi)發(fā) PAGEREF _Toc294905666 h 29 HYPERLINK l _Toc294905667 6.2.2Service層開(kāi)
18、發(fā) PAGEREF _Toc294905667 h 29 HYPERLINK l _Toc294905668 6.2.3Action層開(kāi)發(fā) PAGEREF _Toc294905668 h 30 HYPERLINK l _Toc294905669 6.2.4Applicationcontext.xml配置文件舉例 PAGEREF _Toc294905669 h 31 HYPERLINK l _Toc294905670 6.2.5Jsp頁(yè)面開(kāi)發(fā) PAGEREF _Toc294905670 h 31 HYPERLINK l _Toc294905671 6.3測(cè)試及效果圖 PAGEREF _Toc29
19、4905671 h 31 HYPERLINK l _Toc294905672 結(jié) 論 PAGEREF _Toc294905672 h 36 HYPERLINK l _Toc294905673 參 考 文 獻(xiàn) PAGEREF _Toc294905673 h 37 HYPERLINK l _Toc294905674 致 謝 PAGEREF _Toc294905674 h 38前言系統(tǒng)目的在高校信息化進(jìn)程中,內(nèi)容管理系統(tǒng)扮演者非常重要的角色,各種教學(xué)資源(課件、視頻、文檔、圖像等)的存儲(chǔ)、各個(gè)門(mén)戶網(wǎng)站、各個(gè)教學(xué)輔助系統(tǒng),歸根結(jié)底都是內(nèi)容管理系統(tǒng)。傳統(tǒng)的內(nèi)容管理系統(tǒng)都是單獨(dú)設(shè)計(jì)分散部署的,這樣會(huì)造成大
20、量的資源浪費(fèi),本課題利用面向服務(wù)架構(gòu)設(shè)計(jì)實(shí)現(xiàn)一個(gè)內(nèi)容資源統(tǒng)一存放,WEB前端分布式部署的內(nèi)容管理系統(tǒng),大大提高存儲(chǔ)的效率,降低系統(tǒng)的耦合度,提高系統(tǒng)的靈活性。系統(tǒng)背景近幾十年來(lái),由于計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)迅猛發(fā)展,全世界已經(jīng)進(jìn)入了信息社會(huì)的時(shí)代。大量的信息存儲(chǔ)和管理成為我們面臨的一個(gè)重要問(wèn)題,特別是隨著網(wǎng)絡(luò)的普遍使用,各行各業(yè)都積累了大量的信息資源,如電子郵件、視頻音頻資料、辦公文檔、文件、表格等等,這些給網(wǎng)站的信息更新和維護(hù)工作帶了很大的困難,同時(shí)也產(chǎn)生了許許多多的問(wèn)題,比如頁(yè)面制作無(wú)序,網(wǎng)站風(fēng)格不統(tǒng)一,大量信息堆積,發(fā)布顯得異常沉重,內(nèi)容繁雜,手工管理效率低下等等。于是,科學(xué)管理和合理開(kāi)發(fā)這
21、些內(nèi)部和外部信息資源已經(jīng)成為人們關(guān)注的焦點(diǎn),在這一背景下內(nèi)容管理系統(tǒng)CMS(Content Management System)應(yīng)運(yùn)而生,來(lái)有效解決用戶網(wǎng)站建設(shè)與信息發(fā)布中常見(jiàn)的問(wèn)題和需求。對(duì)網(wǎng)站內(nèi)容管理是內(nèi)容管理系統(tǒng)的最大優(yōu)勢(shì),它流程完善、功能豐富,可把內(nèi)容分門(mén)別類(lèi)并授權(quán)給不同用戶進(jìn)行編輯管理。CMS是一種位于Web前端、Web服務(wù)器、以及后端辦公系統(tǒng)或流程(內(nèi)容創(chuàng)作、編輯)之間的軟件系統(tǒng),其功能比較多,模塊通用性比較強(qiáng)強(qiáng),管理起來(lái)很方便,應(yīng)用也很廣泛。 目前,國(guó)內(nèi)CMS主要有以下幾大類(lèi):第一類(lèi),面向政府和事業(yè)單位的內(nèi)容管理系統(tǒng),其特點(diǎn)是用戶間的需求差距較大,內(nèi)容管理只是一個(gè)大的系統(tǒng)中的某一
22、個(gè)部分,一個(gè)網(wǎng)站中可能有多個(gè)CMS系統(tǒng)。一般在實(shí)施時(shí)要求訂制開(kāi)發(fā),不可能用現(xiàn)成產(chǎn)品來(lái)滿足需求。這樣的解決方案有:WITS、中關(guān)村軟件、方正祥羽、清華萬(wàn)博等。第二類(lèi),針對(duì)政府、媒體、ICP、大型企業(yè)的內(nèi)容管理系統(tǒng),其特點(diǎn)是維護(hù)內(nèi)容的人數(shù)多,水平有高有低,但是需求比較明確,做各種類(lèi)型的信息發(fā)布平臺(tái),要求承受產(chǎn)品級(jí)的解決方案。相應(yīng)的產(chǎn)品有:TurboCMS、TRS WCM、龍訊。第三類(lèi),針對(duì)企業(yè)、個(gè)人的內(nèi)容管理系統(tǒng),特點(diǎn)為用戶是網(wǎng)站技術(shù)愛(ài)好者,喜歡鉆研。需求上可能比較復(fù)雜,比如要跟BBS、用戶注冊(cè)等應(yīng)用集成在一起,滿足個(gè)性化的需求,最好有原代碼,可以自己根據(jù)需要修改等等。國(guó)內(nèi)做的比較好的內(nèi)容管理系統(tǒng)
23、有:新浪的CMS,它是用C+制作的,重點(diǎn)強(qiáng)調(diào)數(shù)據(jù)結(jié)構(gòu)的豐富,功能非常強(qiáng)大;評(píng)論回復(fù)系統(tǒng)做的最好的是網(wǎng)易,延伸閱讀做得也不錯(cuò);搜狐的圖庫(kù)系統(tǒng)做得最好。其他的網(wǎng)站功能如搜索引擎、日歷、Web郵件等也會(huì)以第三方插件的形式集成進(jìn)來(lái)。 本系統(tǒng)主要是研究面向高校的內(nèi)容管理系統(tǒng)。在高校信息化進(jìn)程中,內(nèi)容管理系統(tǒng)扮演者非常重要的角色,各種教學(xué)資源(課件、視頻、文檔、圖像等)的存儲(chǔ)、各個(gè)門(mén)戶網(wǎng)站、各個(gè)教學(xué)輔助系統(tǒng),歸根結(jié)底都是內(nèi)容管理系統(tǒng)。傳統(tǒng)的內(nèi)容管理系統(tǒng)都是單獨(dú)設(shè)計(jì)分散部署的,這樣會(huì)造成大量的資源浪費(fèi),本課題利用面向服務(wù)架構(gòu)設(shè)計(jì)實(shí)現(xiàn)一個(gè)內(nèi)容資源統(tǒng)一存放,WEB前端分布式部署的內(nèi)容管理系統(tǒng),大大提高存儲(chǔ)的效率
24、,降低系統(tǒng)的耦合度,提高系統(tǒng)的靈活性。在當(dāng)今的項(xiàng)目開(kāi)發(fā)中,需要用到SOA(service-oriented architecture)概念的地方越來(lái)越多,比如有些項(xiàng)目會(huì)有這樣的需求:在.net開(kāi)發(fā)的客戶端系統(tǒng)中訪問(wèn)java開(kāi)發(fā)的系統(tǒng),像這樣的需求就需要用到WebService進(jìn)行信息數(shù)據(jù)的操作。面向服務(wù)的體系架構(gòu)是一種比較新的技術(shù)架構(gòu),利用這一架構(gòu)進(jìn)行系統(tǒng)開(kāi)發(fā)時(shí),首先要從整體上加以理解,SOA的關(guān)鍵是服務(wù),開(kāi)發(fā)的思路是首先將功能拆分為組件,然后用服務(wù)包裝這些組建,提供給系統(tǒng)終端使用。系統(tǒng)使用對(duì)象及范圍本系統(tǒng)的用戶主要分為管理員、教師、學(xué)生等角色。下面我們來(lái)具體闡述其各自的大致權(quán)限。(1)管理員
25、:管理員擁有自己唯一的登錄賬號(hào),并使用其登陸賬號(hào)登錄系統(tǒng)的后臺(tái),對(duì)各種課程、資源和用戶進(jìn)行管理。(2)教師:本校老師可以有一個(gè)后臺(tái)管理,用已有的ID和密碼登陸,可以管理相應(yīng)的資源,管理個(gè)人信息,查看選課學(xué)生等。(3)學(xué)生:可以用自己的學(xué)號(hào)登陸,查看所有老師的各種資源以及個(gè)人選課情況,還可以修改個(gè)人的一些信息。更加清晰直觀的系統(tǒng)使用對(duì)象及范圍如表1.1所示:表1.1 使用對(duì)象表系統(tǒng)名稱 使用對(duì)象 使用范圍面向服務(wù)架 管理員允許后臺(tái)登錄,修改、刪除、整理各種資源,管理用戶,修改菜單。構(gòu)的內(nèi)容管 教師 允許登錄,修改個(gè)人信息,上傳圖片、視頻和文檔,編輯和修改已存在的文件理系統(tǒng) 學(xué)生 允許登錄,修改個(gè)
26、人信息,查看選課情況,訪問(wèn)系統(tǒng)資源,下載文件,留言論文的組織結(jié)構(gòu)全文共分為九個(gè)部分第一部分是前言,主要介紹系統(tǒng)目的以及開(kāi)發(fā)背景,闡述了國(guó)內(nèi)外相關(guān)技術(shù)的研究現(xiàn)狀,以及該系統(tǒng)的使用對(duì)象及范圍。第二部分是需求分析,主要介紹系統(tǒng)的功能要求、性能要求、可靠性要求、出錯(cuò)處理要求等內(nèi)容。第三部分是概要設(shè)計(jì),主要介紹系統(tǒng)實(shí)現(xiàn)環(huán)境,系統(tǒng)整體架構(gòu),功能模型,數(shù)據(jù)模型,各模塊系統(tǒng)以及E-R圖,對(duì)系統(tǒng)進(jìn)行UML建模。第四部分是詳細(xì)設(shè)計(jì),主要介紹數(shù)據(jù)庫(kù)設(shè)計(jì),以及原型設(shè)計(jì)方法。第五部分是技術(shù)總結(jié),主要是對(duì)開(kāi)發(fā)過(guò)程中遇到的技術(shù)問(wèn)題進(jìn)行總結(jié)。第六部分是編碼與測(cè)試,對(duì)編碼流程進(jìn)行舉例,包括服務(wù)器端開(kāi)發(fā)和客戶端開(kāi)發(fā),以及兩端開(kāi)發(fā)
27、的不同,對(duì)系統(tǒng)進(jìn)行功能測(cè)試。第七部分是結(jié)論,主要對(duì)系統(tǒng)整體設(shè)計(jì)和完成情況進(jìn)行總結(jié)。第八部分是參考文獻(xiàn),列出了做設(shè)計(jì)和寫(xiě)論文過(guò)程中所參考到的中英文的文獻(xiàn)。第九部分是致謝,感謝大學(xué)四年幫助和教育過(guò)我的所有人,特別是在做設(shè)計(jì)和寫(xiě)論文過(guò)程中予以指導(dǎo)的老師和同學(xué)們。需求分析需求分析即了解用戶的真實(shí)需求,為了開(kāi)發(fā)出真正滿足用戶需求的系統(tǒng),首先必須知道用戶的需求。對(duì)需求的深入理解是系統(tǒng)開(kāi)發(fā)成功的前提條件。在需求分析階段要確定系統(tǒng)必須完成的工作,也就是對(duì)目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。本文從功能要求、性能要求、可靠性要求、出錯(cuò)處理要求等方面來(lái)進(jìn)行需求分析,其中功能要求是本文需求分析的重點(diǎn)。功能要求功
28、能要求是需求分析很重要的一個(gè)部分,這一部分的內(nèi)容對(duì)整個(gè)系統(tǒng)的可用性起著決定性作用,因此對(duì)功能要求要做仔細(xì)認(rèn)真的分析。下面我們將從學(xué)生功能要求、教師功能要求、管理員功能要求三個(gè)方面進(jìn)行分析。學(xué)生功能要求對(duì)本系統(tǒng)來(lái)說(shuō),學(xué)生這個(gè)角色的功能主要包括選擇要學(xué)習(xí)的課程,這樣就可以通過(guò)數(shù)據(jù)庫(kù)記錄選課學(xué)生的信息,從而便于統(tǒng)計(jì)和管理。學(xué)生還可以查看系統(tǒng)資源,比如查看系統(tǒng)上的視頻、圖片、文檔等教學(xué)資源。修改個(gè)人信息,學(xué)生登錄系統(tǒng)后,可以修改個(gè)人信息,并更新保存到數(shù)據(jù)庫(kù)。這些功能,如表2.1所示。表2.1學(xué)生功能要求功能功能描述選課功能選擇要學(xué)習(xí)的課程瀏覽資源瀏覽相應(yīng)教學(xué)資源(視頻、圖片、文檔)個(gè)人資料維護(hù)個(gè)人資料
29、教師功能要求對(duì)本系統(tǒng)來(lái)說(shuō),教師這個(gè)角色的功能主要有對(duì)所教課程進(jìn)行管理,教師對(duì)課程的管理主要是查看所教課程的相關(guān)信息,比如該課程是在哪個(gè)學(xué)期開(kāi)設(shè)、以及每周幾上課等等一些信息。對(duì)資源進(jìn)行管理,主要是相應(yīng)的教學(xué)資源,如視頻資源、圖片資源以及文檔資源等等進(jìn)行增刪改查等操作,還可以查看其他人上傳的資源。還能查看選擇所教課程的學(xué)生,比如想查看有多少人選本門(mén)課程,以及這些學(xué)生的信息,從而便于實(shí)體課堂的管理。最后就是個(gè)人基本信息的維護(hù)了,可以修改個(gè)人相關(guān)信息。如表2.2所示。表2.2教師功能要求功能功能描述課程管理查看所教課程的相關(guān)信息,如開(kāi)課學(xué)期等資源管理管理自己上傳的資源,如增刪改查,查看其他人上傳的資源
30、本門(mén)課學(xué)生查看查看選擇本門(mén)課程(教師為自己)的學(xué)生個(gè)人資料維護(hù)個(gè)人資料管理員功能要求對(duì)本系統(tǒng)來(lái)說(shuō),管理員這個(gè)角色是一個(gè)很重要的角色,其功能最多,權(quán)限最大。管理員要對(duì)用戶進(jìn)行管理,比如當(dāng)需要增加用戶時(shí),只有管理員有權(quán)限進(jìn)行用戶的添加,同樣減少用戶也一樣,只有管理員才有權(quán)限刪除相應(yīng)的用戶,因?yàn)樵鰟h用戶這種操作權(quán)限不可以隨便賦予,否則系統(tǒng)會(huì)發(fā)生紊亂。用戶的管理還包括修改用戶信息和搜索指定用戶,這兩個(gè)操作不只是管理員才行,但管理員的權(quán)限最大,因?yàn)楸热缬脩舯旧硪部梢孕薷淖约旱男畔?,但是不能修改其他用戶的信息,老師也可以查看學(xué)生信息,但是只能查看選擇相應(yīng)課程的學(xué)生信息。菜單管理是本系統(tǒng)的一種個(gè)性化需求,管
31、理員可以為系統(tǒng)添加新菜單,添加的菜單可以指向特定的網(wǎng)頁(yè),從而使系統(tǒng)內(nèi)容更加豐富,另外在系統(tǒng)使用的過(guò)程中,可能有些菜單不合時(shí)宜,那我們還可以將其刪除,或者修改菜單信息,這樣就增加了系統(tǒng)的靈活性,當(dāng)我們想要查看某個(gè)菜單的內(nèi)容是,不需要從頭開(kāi)始查找,因?yàn)橛兴阉鞑藛蔚墓δ?,只要輸入想要查找的菜單的名稱,就可以很快找到。關(guān)于學(xué)生管理功能,當(dāng)有新學(xué)生要加入系統(tǒng)時(shí),我們可以添加相應(yīng)學(xué)生的信息到數(shù)據(jù)庫(kù)中,對(duì)于需要修改的學(xué)生信息,也可以進(jìn)行修改,對(duì)于已經(jīng)畢業(yè)或者退學(xué)的學(xué)生,即要退出本系統(tǒng)的學(xué)生,我們可以將其信息進(jìn)行刪除,當(dāng)我們想要查找某個(gè)學(xué)生的信息時(shí),只要在搜索學(xué)生功能板塊輸入學(xué)生的學(xué)號(hào)即可查詢。管理員還需要對(duì)
32、教師進(jìn)行管理,當(dāng)有新教師要加入系統(tǒng)時(shí),要能夠添加教師信息到數(shù)據(jù)庫(kù),當(dāng)教師信息需要修改時(shí),要能夠?qū)ζ溥M(jìn)行修改并更新保存到數(shù)據(jù)庫(kù),當(dāng)有教師要退出系統(tǒng)時(shí),可以對(duì)其信息進(jìn)行刪除,當(dāng)要查找相應(yīng)教師信息時(shí),可以在系統(tǒng)的教師搜索板塊輸入教工號(hào)進(jìn)行查找。課程管理也是很重要的部分,主要是當(dāng)有新課程要加入該系統(tǒng)時(shí),要能夠添加新課程信息到數(shù)據(jù)庫(kù),當(dāng)課程信息需要修改時(shí),要能夠修改并更新保存到數(shù)據(jù)庫(kù)中,當(dāng)課程結(jié)束時(shí),要能夠?qū)⒄n程信息從數(shù)據(jù)庫(kù)中刪除,管理員還要能夠查看選課學(xué)生信息,包括有選課人數(shù),選課學(xué)生詳細(xì)信息等,當(dāng)要查看課程信息時(shí),為了方便起見(jiàn),要有一個(gè)板塊供我們方便的搜索課程,比如輸入課程名或者課程代號(hào)就可以方便的
33、搜索到要找的課程。對(duì)資源進(jìn)行管理,主要有視頻資源、圖片資源和文檔資源,要能夠?qū)@些資源進(jìn)行增刪改查等基本操作。為了更直觀的了解管理員功能要求,方便系統(tǒng)設(shè)計(jì)和開(kāi)發(fā),特制訂了如下表格,如表2.3所示。表2.3管理員功能要求功能功能描述用戶管理添加用戶,修改用戶信息,刪除用戶,搜索用戶;菜單管理添加新菜單,修改菜單信息,刪除菜單,搜索菜單;學(xué)生管理添加學(xué)生,修改學(xué)生信息,刪除學(xué)生,搜索學(xué)生;教師管理添加教師,修改教師信息,刪除教師,搜索教師;課程管理添加課程,修改課程,刪除課程,查看選課學(xué)生,搜索課程;視頻資源管理添加視頻資源,修改視頻信息,刪除視頻,播放視頻,搜索視頻;圖片資源管理搜索圖片,查看圖
34、片,添加圖片,修改圖片信息,刪除圖片;課件資源管理課件資源的上傳、刪除、修改、查看、搜索;性能要求闡述不同應(yīng)用領(lǐng)域?qū)υ搩?nèi)容管理系統(tǒng)性能的要求,并且說(shuō)明提出需求的原理或者依據(jù),以便開(kāi)發(fā)時(shí)做出合理的設(shè)計(jì)選擇。(1)基礎(chǔ)平臺(tái)(平臺(tái)管理系統(tǒng)):具備用戶和權(quán)限管理(三類(lèi)用戶:管理員、教師、學(xué)生)(2)平臺(tái)內(nèi)容管理系統(tǒng):管理員可進(jìn)行用戶管理及角色管理,實(shí)現(xiàn)菜單的增刪改查,教師可登陸系統(tǒng)進(jìn)行對(duì)應(yīng)資源的管理,學(xué)生可以登陸系統(tǒng)進(jìn)行選課和查看相應(yīng)資源。(3)交互系統(tǒng):滿足教師、學(xué)生間相互交流,如留言。 (4)平臺(tái)課件內(nèi)容存儲(chǔ)和管理應(yīng)基于數(shù)據(jù)庫(kù)系統(tǒng),實(shí)現(xiàn)動(dòng)態(tài)管理(5)每個(gè)站點(diǎn)都獨(dú)自發(fā)布,互不干涉,根據(jù)自己的資料更新
35、情況進(jìn)行自動(dòng)發(fā)布,不同的站點(diǎn)發(fā)布生成的頁(yè)面自動(dòng)部署到不同的Web服務(wù)器上(6)系統(tǒng)必須能運(yùn)行在如下的操作系統(tǒng)及數(shù)據(jù)庫(kù)上,最好能適應(yīng)多種操作系統(tǒng),應(yīng)用服務(wù)器的部署需要:操作系統(tǒng)Windows 2000 Advance Server; Windows XP; Linux數(shù)據(jù)庫(kù)系統(tǒng)使用MySql通訊接口采用TCP/IP、HTTP網(wǎng)絡(luò)協(xié)議。(7)要求的性能指標(biāo):系統(tǒng)平均無(wú)故障運(yùn)行時(shí)間大于99%頁(yè)面響應(yīng)時(shí)間在五秒以內(nèi)可靠性要求能保證在并發(fā)高峰時(shí),系統(tǒng)的訪問(wèn)速度不能有明顯的下降。(2)能保證系統(tǒng)長(zhǎng)期正常穩(wěn)定的運(yùn)行。出錯(cuò)處理要求當(dāng)出現(xiàn)錯(cuò)誤時(shí),有明顯的錯(cuò)誤提示信息。(2)當(dāng)出現(xiàn)硬件當(dāng)機(jī)時(shí),能夠完成對(duì)數(shù)據(jù)的自我
36、保護(hù)。概要設(shè)計(jì)系統(tǒng)實(shí)現(xiàn)環(huán)境(1)前端開(kāi)發(fā)語(yǔ)言的選擇:Java EE(2)基本框架:Struts2、Spring、Hibernate(3)運(yùn)行服務(wù)器:Apache Tomcat(4)前端開(kāi)發(fā)工具的選擇:Eclipse(5)后臺(tái)數(shù)據(jù)庫(kù)的選擇:MySql整體架構(gòu)系統(tǒng)的整體架構(gòu)是采用的面向服務(wù)的架構(gòu),之所以選擇此架構(gòu)是因?yàn)槊嫦蚍?wù)架構(gòu)有其獨(dú)特的優(yōu)勢(shì),其特點(diǎn)主要有靈活性強(qiáng)以及較低的耦合度,可以實(shí)現(xiàn)本課題所研究的內(nèi)容資源統(tǒng)一存放,Web前端分布式部署。本課題所研究的系統(tǒng)實(shí)現(xiàn)的架構(gòu)大致為在服務(wù)器端發(fā)布一些服務(wù),在客戶端調(diào)用相應(yīng)的服務(wù),如圖3.1所示,在服務(wù)器端主要發(fā)布的服務(wù)包括基本信息管理服務(wù),資源管理服務(wù)
37、,權(quán)限管理服務(wù),登陸管理服務(wù),還有留言管理服務(wù)等:圖3.1 整體架構(gòu)圖UML建模本系統(tǒng)中的對(duì)象主要有管理員、教師、學(xué)生、用戶、視頻資源、圖片資源等,這些對(duì)象有各自的屬性和方法,比如管理員的基本屬性是Id和名字,其基本方法是對(duì)資源和用戶等進(jìn)行增刪改查等。學(xué)生的基本屬性也是Id和姓名,基本方法是對(duì)選課信息和個(gè)人信息進(jìn)行增刪改查。教師基本信息是Id和姓名,基本方法是對(duì)課程和資源進(jìn)行增刪改查。用戶基本屬性是Id、姓名和密碼,管理員、學(xué)生和教師都是用戶,其基本方法也是增刪改查。課程的基本屬性是Id和課程名以及教師外鍵,基本方法包括增刪改查。視頻資源和圖片資源的基本屬性都是Id和資源名,基本方法也都是增刪
38、改查。這些對(duì)象之間存在的關(guān)系主要有學(xué)生選課、教師教課、用戶管理資源等。對(duì)本系統(tǒng)進(jìn)行UML建模如下,如圖3.2所示。圖3.2UML類(lèi)圖從UML類(lèi)圖中我們可以清楚的了解系統(tǒng)中各個(gè)對(duì)象的屬性、方法、以及它們之間的關(guān)系,對(duì)我們下一步的編碼設(shè)計(jì)有很好的參考和指導(dǎo)作用,另外為了更好的進(jìn)行下一步的設(shè)計(jì),我們最好再畫(huà)一個(gè)時(shí)序圖,如圖所示3.3所示,從圖中我們可以很清晰的了解系統(tǒng)用戶使用本系統(tǒng)時(shí)的功能流程。圖3.3 時(shí)序圖數(shù)據(jù)模型基本實(shí)體本系統(tǒng)主要的實(shí)體有:管理員,教師,學(xué)生,課程,資源,菜單。其中管理員的屬性信息有用戶名、密碼、昵稱、角色、狀態(tài)。教師的屬性信息有教工號(hào)、姓名、性別、所在學(xué)院、電子郵箱、電話號(hào)碼
39、、職稱、備注。學(xué)生的屬性信息有學(xué)號(hào)、姓名、性別、電子郵箱、電話號(hào)碼、手機(jī)號(hào)碼、所在學(xué)院、所在班級(jí)、所屬專(zhuān)業(yè)。課程的屬性信息有課程代號(hào)、課程名稱、開(kāi)課學(xué)期、學(xué)分、任課教師的Id、所屬學(xué)院、必修選修屬性、最大選課數(shù)、課程介紹。教學(xué)資源的屬性信息有搜索名稱、物理存儲(chǔ)名稱、大小、存儲(chǔ)地址、上傳者、資源類(lèi)型(視頻、圖片、文檔)、備注。菜單這個(gè)實(shí)體的屬性信息主要有菜單名、對(duì)于網(wǎng)頁(yè)地址、圖標(biāo)、上級(jí)菜單的Id、對(duì)用戶的權(quán)限、菜單描述等。作為系統(tǒng)的重要組成部分,這些實(shí)體之間存在特定的關(guān)系,下面我們用E-R圖的形式來(lái)展示這些關(guān)系,為了更清晰的了解實(shí)體之間的關(guān)系,這里采用分E-R圖的方式,首先是用戶管理學(xué)生,如圖3
40、.4所示,其中用戶對(duì)學(xué)生的管理主要包括對(duì)學(xué)生信息的增刪改查等操作。用戶管理教師,如圖3.5所示,其中用戶對(duì)教師的管理主要包括對(duì)教師信息的增刪改查等。用戶管理菜單,如圖3.6所示,其中用戶對(duì)菜單的管理主要包括對(duì)菜單信息的增刪改查等。用戶管理資源,如圖3.7所示,其中用戶對(duì)資源的管理主要包括對(duì)資源信息的增刪改查等。老師教課學(xué)生選課,如圖3.8所示,該圖以非常清晰,不在贅述。圖3.4 用戶管理學(xué)生圖3.5 用戶管理教師圖3.6 用戶管理菜單圖3.7 用戶與資源圖3.8 教師教課與學(xué)生選課各模塊系統(tǒng)本系統(tǒng)共分為9個(gè)子系統(tǒng),如圖3.9所示:菜單管理系統(tǒng),用戶管理系統(tǒng),學(xué)生管理系統(tǒng),教師管理系統(tǒng),課程管理
41、系統(tǒng),視頻資源管理系統(tǒng),圖片資源管理系統(tǒng),文檔資源管理系統(tǒng),權(quán)限管理。(1)菜單管理系統(tǒng):用戶可以對(duì)已有菜單進(jìn)行搜索,還可以添加需要的菜單,修改相應(yīng)菜單的信息,刪除相應(yīng)的菜單。(2)用戶管理系統(tǒng):管理員可以按學(xué)號(hào)或教工號(hào)搜索用戶,還可以添加新用戶,對(duì)用戶信息進(jìn)行修改,刪除用戶。(3)學(xué)生管理系統(tǒng):管理員可以按學(xué)號(hào)搜索學(xué)生,還可以添加學(xué)生,修改學(xué)生信息,刪除學(xué)生。(4)教師管理系統(tǒng):管理員可以按教工號(hào)搜索教師,還可以添加教師,修改教師信息,刪除教師。(5)課程管理系統(tǒng):管理員可以按課程號(hào)搜索課程,還可以添加課程,修改課程信息,刪除課程,查看選該門(mén)課程的所有學(xué)生信息。(6)視頻資源管理系統(tǒng):用戶可
42、以按資源名稱搜索相應(yīng)視頻,還可以添加視頻文件,修改視頻信息,刪除視頻文件,播放視頻。(7)圖片資源管理系統(tǒng):用戶可以按圖片名稱搜索相應(yīng)圖片,查看圖片,添加圖片,修改圖片信息,刪除圖片。(8)文檔資源管理系統(tǒng):用戶可以按文檔名稱搜索相應(yīng)文檔,上傳文檔,下載文檔,刪除文檔,修改文檔信息。(9)權(quán)限管理:該功能融合在菜單管理內(nèi)容中,在添加菜單時(shí)注明該項(xiàng)菜單對(duì)于各用戶的操作權(quán)限。圖3.9 系統(tǒng)整體功能圖詳細(xì)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)命名規(guī)范表名:對(duì)應(yīng)的英文,比如課程表,命名為course(2)字段:對(duì)應(yīng)的英文,并且字段名為兩個(gè)英文單詞時(shí),第二個(gè)單詞的首字母大寫(xiě),比如課程名,命名為courseName(3)外
43、鍵:表名+字段名,字段名首字母大寫(xiě) 比如,在課程表中,教師ID是教師表中的外鍵,命名為teacherId對(duì)應(yīng)表設(shè)計(jì)課程表設(shè)計(jì),課程是一個(gè)重要實(shí)體,該實(shí)體在數(shù)據(jù)庫(kù)中對(duì)應(yīng)的表的詳細(xì)信息如表4.1所示,其屬性信息主要有課程ID,作為唯一標(biāo)示課程的一個(gè)信息;課程號(hào),一般每個(gè)課程都有一個(gè)代號(hào),方便記錄;課程名,每個(gè)課程都應(yīng)該有自己的名稱,方便識(shí)別和記憶;開(kāi)課學(xué)期,是一個(gè)很重要的屬性,標(biāo)示課程的開(kāi)課時(shí)間;學(xué)分,自從高校實(shí)行學(xué)分制以來(lái),一般沒(méi)門(mén)課程都要設(shè)定相應(yīng)的學(xué)分。教師ID,每門(mén)課程都要有一個(gè)教師來(lái)教,所以課程表與教師表要有個(gè)對(duì)應(yīng),這就是教師ID的作用了。學(xué)院,由于每個(gè)課程都是由指定的學(xué)院開(kāi)設(shè)的,所以要有
44、學(xué)院信息。屬性,是指課程是必修還是選修。最大選課數(shù),是指為每門(mén)課程指定選擇該門(mén)課程的學(xué)生數(shù)。課程介紹即對(duì)課程做相應(yīng)的描述,介紹課程的大致內(nèi)容。表4.1課程表(course)名稱屬性名類(lèi)型長(zhǎng)度是否為空說(shuō)明課程IDidint11否主鍵課程號(hào)courseNumvarchar20否課程名courseNamevarchar40否開(kāi)課學(xué)期timevarchar40學(xué)分creditint11教師IDteacherIdint11學(xué)院academyvarchar20屬性propertiesvarchar50最大選課數(shù)maxNumberint10課程介紹introductionvarchar200學(xué)院表的設(shè)計(jì),其
45、詳細(xì)信息如表4.2所示,其中學(xué)院ID作為主鍵唯一標(biāo)示學(xué)院這個(gè)實(shí)體,另外每個(gè)學(xué)院有一個(gè)代號(hào),還有學(xué)院名稱以及學(xué)院的管理員數(shù)。表4.2學(xué)院表(academy)名稱屬性名類(lèi)型長(zhǎng)度是否為空說(shuō)明學(xué)院IDidint11否主鍵學(xué)院代號(hào)deptCodevarchar10學(xué)院名稱deptNamevarchar20學(xué)院管理員數(shù)deptManagerint11登陸表設(shè)計(jì),登陸表里記錄著登陸系統(tǒng)的用戶的信息,如表4.3所示,其中登陸ID唯一標(biāo)示每一位登陸用戶,另外還有登陸賬號(hào)和密碼,每個(gè)用戶還有一個(gè)昵稱,角色是指為每個(gè)用戶指定相應(yīng)的角色,如教師、學(xué)生、管理員等,這樣就可以根據(jù)不同的角色賦予其不同的操作權(quán)限。狀態(tài),是指
46、顯示用戶是否在線。表4.3 登陸表(login)名稱屬性名類(lèi)型長(zhǎng)度是否為空說(shuō)明登陸IDidint11否主鍵登陸賬號(hào)numbervarchar20否密碼passwordvarchar20昵稱nicknamevarchar50角色rolevarchar11否狀態(tài)statusint11菜單表的設(shè)計(jì),如表4.4所示,其中用菜單ID作為主鍵唯一標(biāo)示每一個(gè)菜單,菜單名便于記憶每一個(gè)菜單,網(wǎng)址是指菜單所鏈接到的網(wǎng)頁(yè)的地址,圖標(biāo)是指菜單用到資源里面的哪個(gè)圖片,上級(jí)Id是指菜單的上一級(jí)菜單的Id,權(quán)限是指該菜單對(duì)于不同角色的不同權(quán)限,描述是對(duì)菜單的簡(jiǎn)單介紹。表4.4 菜單表(menu)名稱屬性名類(lèi)型長(zhǎng)度是否為空
47、說(shuō)明菜單IDidint11否主鍵菜單名namevarchar30否網(wǎng)址urlvarchar100圖標(biāo)iconvarchar20上級(jí)IdparentIdint11權(quán)限permissionvarchar10描述descriptionvarchar40資源表的設(shè)計(jì),如表4.5所示,資源ID作為主鍵來(lái)唯一標(biāo)示相應(yīng)資源;搜索名即資源的顯示名稱;資源名是指資源在硬盤(pán)上存儲(chǔ)時(shí)的名稱,它是由資源存儲(chǔ)時(shí)的時(shí)間加上幾個(gè)隨機(jī)數(shù)組成,這樣在存儲(chǔ)的時(shí)候基本上不會(huì)發(fā)生沖突;資源大小,即資源所占存儲(chǔ)空間的大??;網(wǎng)址,是指資源存儲(chǔ)的地址;用戶賬號(hào)是指上傳資源的用戶的登錄賬號(hào),以便于記錄資源的上傳人;資源類(lèi)型是用來(lái)標(biāo)示資源是圖
48、片、視頻還是文檔;備注,即對(duì)資源的描述和說(shuō)明。表4.5 資源表(source)名稱屬性名類(lèi)型長(zhǎng)度是否為空說(shuō)明資源IDidint11否主鍵搜索名searchNamevarchar40資源名sourceNamevarchar40資源大小sizefloat網(wǎng)址urlvarchar200用戶賬號(hào)userNumvarchar20資源類(lèi)型typevarchar20備注commentvarchar200學(xué)生表的設(shè)計(jì),如表4.6所示,學(xué)生ID 作為主鍵來(lái)唯一標(biāo)示每一個(gè)學(xué)生;學(xué)號(hào),學(xué)校為每個(gè)學(xué)生編有學(xué)號(hào);姓名、性別都是學(xué)生的基本信息;電子郵箱、手機(jī)號(hào)和電話號(hào)都是為了方便與學(xué)生聯(lián)系而設(shè)計(jì)的屬性信息;所在學(xué)院、專(zhuān)業(yè)
49、和班級(jí),這些也都是學(xué)生的基本信息。表4.6 學(xué)生表(student)名稱屬性名類(lèi)型長(zhǎng)度是否為空說(shuō)明學(xué)生IDidint11否學(xué)號(hào)stuNumvarchar20否姓名stuNamevarchar20否性別sexvarchar10電子郵箱emailvarchar20電話號(hào)碼telephonevarchar20手機(jī)號(hào)碼handphonevarchar20所在學(xué)院academyvarchar20所在專(zhuān)業(yè)majorvarchar20所在班級(jí)classesvarchar20學(xué)生選課表的設(shè)計(jì),如圖4.7所示,該表主要包括學(xué)生ID和課程ID,該表是用來(lái)連接學(xué)生表和課程表的。表4.7 學(xué)生選課表(studentc
50、ourse)名稱屬性名類(lèi)型長(zhǎng)度是否為空說(shuō)明學(xué)生IDstuIdint11否Student表的外鍵課程IDcourseIdint11否course表的外鍵教師表的設(shè)計(jì),如表4.8所示,教師ID作為主鍵唯一標(biāo)示每一位教師;教工號(hào),一般學(xué)校都為每一位教師編定一個(gè)教工號(hào),便于記錄和統(tǒng)計(jì);姓名、性別、所在學(xué)院以及職稱這些都是教師的基本信息;電子郵箱、電話號(hào)和手機(jī)號(hào)都是為了方便聯(lián)系教師而設(shè)定的屬性信息;備注是對(duì)教師的相關(guān)介紹。表4.8 教師表(teacher)名稱屬性名類(lèi)型長(zhǎng)度是否為空說(shuō)明教師IDteaIdint11否主鍵教工號(hào)teaNumvarchar20否姓名teaNamevarchar20否性別sex
51、varchar2電子郵箱emailint40所在學(xué)院academyint40電話號(hào)碼telephone15手機(jī)號(hào)碼handphone15職稱jobTitle40備注content200原型設(shè)計(jì)原型法設(shè)計(jì)作為軟件開(kāi)發(fā)的一種開(kāi)發(fā)方法,有著其獨(dú)特的優(yōu)勢(shì),首先采用原型設(shè)計(jì)法,可以快速適應(yīng)需求的變化,減少因需求變化引起的各種風(fēng)險(xiǎn);另外,該方法的使用可以使需求分析進(jìn)行的更充分,即可以先設(shè)計(jì)出簡(jiǎn)單的原型,然后利用原型跟用戶進(jìn)行溝通,這樣的溝通會(huì)更直觀,用戶也會(huì)更明白。本系統(tǒng)在設(shè)計(jì)的時(shí)候,只是利用了原型設(shè)計(jì)的思想,并沒(méi)有把原型設(shè)計(jì)很好的融入到系統(tǒng)的設(shè)計(jì)當(dāng)中。但這已經(jīng)為本系統(tǒng)的整體開(kāi)發(fā)做了不少的貢獻(xiàn)。我的做法是
52、,先設(shè)計(jì)出簡(jiǎn)單的用戶操作界面,里面沒(méi)有數(shù)據(jù)的交互,甚至只是一些靜態(tài)的頁(yè)面,但是正是在這些靜態(tài)頁(yè)面的設(shè)計(jì)過(guò)程中,我逐步形成了系統(tǒng)整體的一個(gè)框架出來(lái)。下面是我做原型時(shí)的一個(gè)頁(yè)面,如圖4.1所示:圖4.1 原型設(shè)計(jì)界面舉例技術(shù)框架ExtJs框架首先來(lái)認(rèn)識(shí)一下該框架,ExtJs是一個(gè)用來(lái)開(kāi)發(fā)前端用戶界面的技術(shù)框架,是用Javascript編寫(xiě)的,并且與后臺(tái)技術(shù)實(shí)現(xiàn)無(wú)關(guān),不管后面用C#,還是Java或者PHP都沒(méi)有關(guān)系。該框架的功能極其豐富,設(shè)計(jì)出來(lái)的界面特別美觀,比如它的高亮顯示選中行,還有很多動(dòng)畫(huà)效果做的很好,這些都可以提高用戶的感知度。最重要的是使用該框架不僅可以使開(kāi)發(fā)的界面更加美觀,而且可以簡(jiǎn)化
53、我們的界面設(shè)計(jì)工作,為我們省去了設(shè)計(jì)樣式的麻煩,比如它能自動(dòng)生成行號(hào),并支持checkbox全選,還可以動(dòng)態(tài)選擇顯示哪些列,還可以支持本地以及遠(yuǎn)程 HYPERLINK /view/159980.htm 分頁(yè),可以對(duì)單元格按照自己的想法進(jìn)行渲染,再加上可編輯grid,添加新行,刪除一或多行,提示多行數(shù)據(jù),推拽改變grid大小,grid之間拖拽一行或多行,甚至可以在tree和grid之間進(jìn)行拖拽等等這些功能。ExtJs之所以有這么強(qiáng)大的功能,其主要原因是該框架封裝了一些比較美觀又實(shí)用的組件,比如TreePanel組件,它是用于顯示樹(shù)信息的,還有GridPanel及EditorGridPanel組件
54、,它們是用于顯示表格的,另外還有Ext.Window等控件,它代表應(yīng)用程序窗口的ExtJs控件。在使用ExtJs的時(shí)候,掌握其中的核心控件對(duì)于我們來(lái)說(shuō)非常重要,尤其是那些基礎(chǔ)類(lèi)控件。例如上面提到的那些控件,它們都是繼承于Panel面板,因此我們要對(duì)面板這一核心控件的屬性進(jìn)行重點(diǎn)理解和掌握。下面對(duì)面板這一控件進(jìn)行大概的介紹,面板由以下幾個(gè)部分組成:一個(gè)頂部工具欄(tbar)、一個(gè)底部工具欄(bbar)、面板頭部(header)、面板尾部(bottom)、面板主區(qū)域(body)這幾個(gè)部分組成。另外,面板類(lèi)中還內(nèi)置了面板展開(kāi)、關(guān)閉等功能,并提供一系列可重用的工具按鈕,這就使得我們可以輕松實(shí)現(xiàn)自定義的
55、行為,面板還可以放入其它任何容器中,另外面板本身又是一個(gè)容器,它里面又可以包含各種其它組件。如果我們能夠掌握好Panel的應(yīng)用,那么學(xué)習(xí)TreePanel、Window等就會(huì)變得容易得多。一樣的道理,對(duì)于ExtJs的表單字段來(lái)說(shuō),不管是ComboBox,NumberField、還是DateField,它們都是 Ext.form.Field類(lèi)的子類(lèi),在它上面定義了表單字段的各種基本操作及特性。所以,在學(xué)習(xí)使用表單字段組件時(shí),F(xiàn)ield這個(gè)類(lèi)一定要作為研究的重點(diǎn),掌握了它的主要方法、事件等,就能有助于更好的學(xué)習(xí)使用其它的字段。在項(xiàng)目中,Ext本身的華麗外表的確很吸引人,但這僅僅是其外在的美,還有最
56、核心的內(nèi)在美,即:Json(JavaScript Object Notation)。Json是一種數(shù)據(jù)交互格式,一個(gè)不能實(shí)現(xiàn)數(shù)據(jù)交互功能的項(xiàng)目是沒(méi)有任何意義的,大多的Ajax框架的數(shù)據(jù)交互都基于Json,如:jQuery、ExtJs等。因此理解Json掌握J(rèn)son并熟練運(yùn)用是很重要的。以目前主流的開(kāi)發(fā)語(yǔ)言為例,.NET已經(jīng)把Json封裝到類(lèi)中,無(wú)需配置,直接與數(shù)據(jù)庫(kù)交互,輕松的封裝直接使用;Java就麻煩些,必須去下一個(gè)Json包,然后再做一些配置,才可以使用;PHP和Java差不多,也必須下載一個(gè)Json插件(和類(lèi)相似),但是不用配置,直接封裝使用。在實(shí)際的項(xiàng)目中,各自的取舍配置,都基于項(xiàng)目
57、和需求,并不是每個(gè)項(xiàng)目(針對(duì)WEB)都一定要用到。但是,如果想在項(xiàng)目中用到此類(lèi)的Ajax框架,Json的掌握又是必須的。CXF框架Apache CXF 是一個(gè)開(kāi)源的 Services 框架,CXF可以幫助我們利用 Frontend 編程 API 來(lái)構(gòu)建和開(kāi)發(fā) Services,比如JAX-WS 。這些 Services 可以支持多種協(xié)議,例如:SOAP、XML/HTTP、RESTful HTTP 或者 CORBA ,并且可以在多種傳輸協(xié)議上運(yùn)行,比如:HTTP、JMS 或者 JBI,而且CXF 大大簡(jiǎn)化了 Services 的創(chuàng)建,同時(shí)它繼承了 XFire 傳統(tǒng),一樣可以天然地和 Spring
58、 進(jìn)行無(wú)縫集成。CXF包含了大量的功能特性,主要集中在以下幾個(gè)方面:支持 Web Services 標(biāo)準(zhǔn):CXF 支持多種 Web Services 標(biāo)準(zhǔn),包含 SOAP、Basic Profile、 HYPERLINK /view/1609926.htm WS-Addressing、WS-Policy、WS-ReliableMessaging 和 HYPERLINK /view/1613268.htm WS-Security。Frontends:CXF 支持多種“Frontend”編程模型,CXF 實(shí)現(xiàn)了 JAX-WS API (遵循 JAX-WS 2.0 TCK 版本),它也包含一個(gè)“si
59、mple frontend”允許 HYPERLINK /view/930.htm 客戶端和 EndPoint 的創(chuàng)建,而不需要 Annotation 注解。CXF 既支持 WSDL 優(yōu)先開(kāi)發(fā),也支持從 Java 的代碼優(yōu)先開(kāi)發(fā)模式。容易使用: CXF 設(shè)計(jì)得更加直觀與容易使用。有大量簡(jiǎn)單的 API 用來(lái)快速地構(gòu)建代碼優(yōu)先的 Services,各種 Maven 的插件也使集成更加容易,支持 JAX-WS API ,支持 Spring 2.0 更加簡(jiǎn)化的 XML 配置方式,等等。支持二進(jìn)制和遺留協(xié)議:CXF 的設(shè)計(jì)是一種可插撥的架構(gòu),既可以支持 XML ,也可以支持非 XML 的類(lèi)型綁定,比如:J
60、SON 和 CORBA。CXF有一些優(yōu)勢(shì),它的開(kāi)發(fā)簡(jiǎn)單,在Stand alone方式下執(zhí)行效率高,可以靈活部署,比如可以部署在一些輕量級(jí)的容器上,像Tomcat或者基于Spring的容器;可以在Java EE應(yīng)用服務(wù)器中部署Services;還可以在獨(dú)立的客戶端或者服務(wù)器端進(jìn)行部署。它能夠支持多種編程語(yǔ)言。另外它還有一個(gè)重要特點(diǎn)是代碼生成的特點(diǎn),分為以下幾種類(lèi)型:Java to WSDL;WSDL to Java;XSD to WSDL;WSDL to XML;WSDL to SOAP;WSDL to Service;本系統(tǒng)采用的是其中的Java to WSDL方式。SSH框架(1)首先對(duì)該框
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 買(mǎi)賣(mài)鋼材協(xié)議合同范例
- 出國(guó)打工合同范例
- 五年級(jí)心理降上冊(cè)3交往從尊重開(kāi)始教案北師大版
- 入股店鋪協(xié)議合同范例
- 涂料涂抹施工方案
- ktv托管經(jīng)營(yíng)合同范例
- 業(yè)主工人裝修合同范例
- 企業(yè)回收電池合同范例
- l拉運(yùn)合同范例
- 樂(lè)高合同范例
- 一級(jí)公司向二級(jí)公司授權(quán)管理制度
- 沃爾瑪全國(guó)的分布
- (自考)財(cái)務(wù)管理學(xué)完整版課件全套ppt教程(最新)
- 第四紀(jì)地質(zhì)與環(huán)境:第十一章 第四紀(jì)氣候變遷及其動(dòng)力機(jī)制
- 鋼結(jié)構(gòu)廠房工程施工組織設(shè)計(jì)方案(85頁(yè))
- 小學(xué)生心理健康講座-(精)
- 蝴蝶豌豆花(課堂PPT)
- 數(shù)獨(dú)6×6初級(jí)打印版
- 口腔修復(fù)學(xué)-第七章-牙列缺失的全口義齒修復(fù)
- Y-Y2系列電機(jī)繞組標(biāo)準(zhǔn)數(shù)據(jù)匯總
- 關(guān)于進(jìn)一步明確長(zhǎng)春市物業(yè)服務(wù)收費(fèi)
評(píng)論
0/150
提交評(píng)論