




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 I 目 錄TOC o 1-3 h u HYPERLINK l _Toc20359 內(nèi)容摘要 II HYPERLINK l _Toc2820 4.2 系統(tǒng)總體設(shè)計(jì) PAGEREF _Toc2820 20 HYPERLINK l _Toc4301 4.2.1 軟件結(jié)構(gòu)設(shè)計(jì) PAGEREF _Toc4301 21 HYPERLINK l _Toc5978 4.2.2 系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì) PAGEREF _Toc5978 22 HYPERLINK l _Toc9511 4.3 系統(tǒng)詳細(xì)設(shè)計(jì) PAGEREF _Toc9511 25 HYPERLINK l _Toc7118 4.3.1用戶管理模塊 PAGE
2、REF _Toc7118 25 HYPERLINK l _Toc2660 4.3.2社團(tuán)介紹功能模快 PAGEREF _Toc2660 28 HYPERLINK l _Toc28405 4.3.3個(gè)人中心 PAGEREF _Toc28405 29 HYPERLINK l _Toc30838 4.4 編碼與測(cè)試 PAGEREF _Toc30838 30 HYPERLINK l _Toc7625 總 結(jié) PAGEREF _Toc7625 31 HYPERLINK l _Toc29180 參考文獻(xiàn) PAGEREF _Toc29180 32 HYPERLINK l _Toc19405 致 謝 PAGE
3、REF _Toc19405 33 高校社團(tuán)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 計(jì)算機(jī)科學(xué)與技術(shù)系 計(jì)算機(jī)092201H 王元 指導(dǎo)老師:甄磊 內(nèi)容摘要校園社團(tuán)管理系統(tǒng)主要是為了給領(lǐng)導(dǎo)、各社社長(zhǎng)、社員提供一個(gè)平臺(tái),在這個(gè)平臺(tái)里社員可以在里進(jìn)行活動(dòng)策劃、交流,社團(tuán)管理層可以管理本社團(tuán)的社員、社團(tuán)活動(dòng),而學(xué)校領(lǐng)導(dǎo)則可以對(duì)整個(gè)學(xué)校的社員,社團(tuán),活動(dòng)情況進(jìn)行有效管理。本系統(tǒng)主要完成了對(duì)用戶權(quán)限、社團(tuán)經(jīng)費(fèi)、社團(tuán)活動(dòng)申請(qǐng)、社員信息查詢與修改、社團(tuán)變更等功能。系統(tǒng)開發(fā)主要包括JSP頁(yè)面設(shè)計(jì),Action類編寫與數(shù)據(jù)庫(kù)表設(shè)計(jì)。本系統(tǒng)采用了JSP+SSH+Mysql工具結(jié)構(gòu),因?yàn)閷W(xué)校社團(tuán)數(shù)據(jù)量不是很大,故選用了簡(jiǎn)單方便的Mys
4、ql數(shù)據(jù)庫(kù)。本系統(tǒng)共包括五個(gè)大模塊,分別對(duì)應(yīng)五種不同的權(quán)限。五個(gè)大??旆謩e為:社員??欤玳L(zhǎng)模快,學(xué)校領(lǐng)導(dǎo)模快,超級(jí)用戶模塊,普通注冊(cè)用戶模塊,每個(gè)大??煊址譃槿舾蓚€(gè)小???。社員??彀ㄉ鐖F(tuán)經(jīng)費(fèi)查看、社員信息修改、學(xué)校所有社團(tuán)介紹、活動(dòng)申請(qǐng)五個(gè)小??臁6玳L(zhǎng)模則包括社團(tuán)成員管理、經(jīng)費(fèi)申請(qǐng)、活動(dòng)申請(qǐng)、個(gè)人信息修改四個(gè)小??臁W(xué)校領(lǐng)導(dǎo)則包括學(xué)校所有社員管理、社團(tuán)管理、社長(zhǎng)任命、經(jīng)費(fèi)批準(zhǔn)四個(gè)小模快。本文從社團(tuán)管理系統(tǒng)在學(xué)校社團(tuán)生活中產(chǎn)生的作用出發(fā),詳細(xì)闡述了一個(gè)功能較完善的社團(tuán)管理系統(tǒng)的前臺(tái)開發(fā)、操作流程和涉及的一些關(guān)鍵技術(shù)。介紹了系統(tǒng)的需求分析,系統(tǒng)分析,具體完成了數(shù)據(jù)流分析,數(shù)據(jù)字典功能模塊的劃
5、分,數(shù)據(jù)庫(kù)的設(shè)計(jì)和界面設(shè)計(jì)。最后對(duì)系統(tǒng)進(jìn)行了測(cè)試分析,以保證其性能的穩(wěn)定性和功能的完整性。 關(guān)鍵詞:Mysql,SSH,活動(dòng)申請(qǐng),經(jīng)費(fèi)申請(qǐng),會(huì)員管理,社團(tuán)管理。 Community colleges and universities management system Computer science and technology The computer092201H WangYuan Guide teacher:ZhenLei ABSTRACT Student club management system is mainly to give leadership, each club Pr
6、esident, membership to provide a platform, In this platform the membership can undertake event planning, communication, publication to each club opinions views. presidents can manage opinion views from corporate membership, and school leaders, can give a effective management to the entire school mem
7、bership, activity. System development mainly includes the JSP page design, database table servlet class preparation and design. This system USES a JSP + SSH + Mysql tools structure, because the school community data quantity is not very big, so choose the simple Mysql database.This system includes t
8、hree big modules, corresponding three different permissions. Three big mould fast respectively is: members die fast, presidents mould fast, the school leader mould fast, each big modulus quick and divided into several small mould fast. Membership mould fast including membership messages, community n
9、ews reading, membership information modification, school all societies introduction and activities for five small mould fast. School leaders, including school all membership management, President appointed, activity approval, published community news four small mould fast. This article from club man
10、agement system in school community life start of effects, this paper expounds the functions of a more perfect on the stage league management system development, operation process and some key technologies involved. Presents the system requirement analysis, system analysis, specific completed data fl
11、ow analysis, data dictionary function module, database design and interface design. In the end, system was tested and analysed, to assure the performance stability and function integrity. KEY WORDSMysql,Struts2,Spring,Hibernate,Activity-application,Funds-application,Member-manager,Community-manager
12、第一章 緒論 在現(xiàn)代大學(xué)教學(xué)模式中社團(tuán)是培養(yǎng)學(xué)生的一個(gè)很重要的教學(xué)方式,故在每個(gè)學(xué)校里都有很多各種各樣的社團(tuán),比如學(xué)術(shù)問(wèn)題、社會(huì)問(wèn)題的計(jì)論研究會(huì),文學(xué)藝術(shù)、體育、音樂(lè)、美術(shù)等方面組成的活動(dòng)社,當(dāng)然還有學(xué)生會(huì)、青年志愿者這樣的學(xué)生管理協(xié)會(huì)。這么多種類的協(xié)會(huì)如果只是用紙質(zhì)文檔進(jìn)行管理的話不但耗費(fèi)大量不必要的人力,而且給管理帶來(lái)了很多不便,造成學(xué)校機(jī)構(gòu)的臃腫,所以學(xué)校管理向以電子化、信息化為基本平臺(tái)的方向發(fā)展成為必然。1.1 選題背景在當(dāng)今的社會(huì),可以說(shuō)是信息技術(shù)的發(fā)展時(shí)代,在社會(huì)的方方面面無(wú)不涉及到各種信息的處理。信息是人們對(duì)客觀世界的具體描述,是人們進(jìn)行交流與聯(lián)系的重要途徑。人類社會(huì)就處在一個(gè)對(duì)
13、信息進(jìn)行有效合理的加工中。它將促進(jìn)整個(gè)社會(huì)的發(fā)展。隨著社會(huì)信息技術(shù)的提高,計(jì)算機(jī)已被廣泛應(yīng)用于當(dāng)今社會(huì)的各個(gè)領(lǐng)域,成為推動(dòng)社會(huì)發(fā)展的首要技術(shù)動(dòng)力。在當(dāng)今信息時(shí)代,人們的生活方式隨著Internet的不斷發(fā)展發(fā)生了不同尋常的改變?;贗nternet的遠(yuǎn)程辦公方式已經(jīng)越來(lái)越受到大家的歡迎,應(yīng)用的領(lǐng)域也越來(lái)越廣泛,提高辦公效率已經(jīng)成為所有企業(yè)、公司、事業(yè)單位等各部門追求的目標(biāo)。在傳統(tǒng)的社團(tuán)管理工作中,一項(xiàng)活動(dòng)的開展往往需要策劃,申請(qǐng),批準(zhǔn),意見收集等環(huán)節(jié),而這過(guò)程中找老師批準(zhǔn),獲取各種活動(dòng)資源都需要學(xué)生在老師辦公室與寢室之間來(lái)回跑動(dòng),浪費(fèi)了很多不必要的時(shí)間與精力,使得活動(dòng)準(zhǔn)備時(shí)間過(guò)長(zhǎng),也帶來(lái)諸多不
14、便。隨著計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)的發(fā)展,利用網(wǎng)絡(luò)進(jìn)行管理越來(lái)越成為學(xué)校管理的發(fā)展方向。社團(tuán)管理系統(tǒng),利用先進(jìn)的計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)通信技術(shù)、多媒體技術(shù)等相關(guān)的技術(shù),將各社員與學(xué)校管理老師聯(lián)系起來(lái)實(shí)現(xiàn)即時(shí)信息通迅,為老師學(xué)生都節(jié)約了大量的時(shí)間與精力并大大提高了學(xué)校管理工作的效率與質(zhì)量,同時(shí)也精簡(jiǎn)了學(xué)校管理機(jī)構(gòu)。1.1.1基于JSP社團(tuán)管理系統(tǒng)的提出隨著學(xué)校社團(tuán)組織的蓬勃發(fā)展,在傳統(tǒng)的社團(tuán)管理方式下出現(xiàn)了各種各樣的問(wèn)題,使得社團(tuán)管理比較混亂。這些問(wèn)題主要表現(xiàn)如下: 在一年中不同的時(shí)期不很多活動(dòng)是不適合進(jìn)行的或有很多地方需要同學(xué)在活動(dòng)時(shí)要特別注意,比如社會(huì)出現(xiàn)整體情緒大波動(dòng)時(shí)學(xué)生就不能到大街上去進(jìn)行各種游行
15、活動(dòng)、夏天來(lái)臨時(shí)學(xué)生進(jìn)行游泳活動(dòng)時(shí)就要特別注意做好各種防范措施等等。而學(xué)生可能注意不到這些這就需要學(xué)校領(lǐng)導(dǎo)對(duì)學(xué)生進(jìn)行提醒,但傳統(tǒng)方式是通過(guò)班主任在每周晚點(diǎn)名的時(shí)候?qū)ν瑢W(xué)進(jìn)行叮囑,但這種方式信息傳達(dá)很慢,有時(shí)更是錯(cuò)過(guò)了時(shí)間。這時(shí)如果有一種社團(tuán)管理系統(tǒng)里將這些要注意的地方以社團(tuán)新聞的方式發(fā)布出來(lái)的話,就能達(dá)到將信息及時(shí)傳送到學(xué)生手里的目的。 在學(xué)校社團(tuán)管理中肯定會(huì)舉辦各種各樣的活動(dòng),而舉辦這些活動(dòng)都需要一定的經(jīng)費(fèi),出了找贊助商和合作單位外,還需要社團(tuán)批準(zhǔn)一定的經(jīng)費(fèi)來(lái)讓活動(dòng)圓滿的舉辦成功。 現(xiàn)在大學(xué)都比較大,學(xué)生寢室隔老師辦公室都比較遠(yuǎn),有時(shí)學(xué)生組織辦一次活動(dòng)找老師批準(zhǔn)要找好幾次,這樣花費(fèi)了組織者很
16、多不必要的精力,直接在網(wǎng)上進(jìn)行活動(dòng)申報(bào)將為組織者節(jié)約很多時(shí)間精力。 以上這幾點(diǎn)社團(tuán)管理問(wèn)題直接要求有這么一個(gè)網(wǎng)站來(lái)解決這些問(wèn)題。社團(tuán)管理系統(tǒng)針對(duì)這些問(wèn)題設(shè)計(jì)功能???,很好的解決了傳統(tǒng)社團(tuán)管理中出現(xiàn)的各種問(wèn)題。1.2 系統(tǒng)設(shè)計(jì)的原則與目標(biāo)1.2.1 系統(tǒng)設(shè)計(jì)原則根據(jù)社團(tuán)管理系統(tǒng)的實(shí)際需要,選用Tomcat 作為系統(tǒng)平臺(tái),在此基礎(chǔ)上方便、靈活、人機(jī)界面友好、直觀清晰,非常實(shí)用。不同級(jí)別用戶的登錄擁有對(duì)系統(tǒng)不同的權(quán)限,分別管理職權(quán)內(nèi)的事務(wù),不同用戶擁有不同的界面,但高級(jí)用戶可以以低級(jí)用戶的身份登錄進(jìn)入系統(tǒng),進(jìn)行低級(jí)用戶的操作,反之則不能。1.2.2 系統(tǒng)設(shè)計(jì)目標(biāo)系統(tǒng)的總體目標(biāo)是要提高社團(tuán)管理人員的工
17、作效率和管理水平,方便社員參與到社團(tuán)的建設(shè),并為社員與管理人員提供一個(gè)信息交流平臺(tái),達(dá)到將社團(tuán)管理工作納入科學(xué)化、規(guī)范化的軌道目的。為了實(shí)現(xiàn)系統(tǒng)設(shè)計(jì)的總目標(biāo)社團(tuán)管理系統(tǒng)應(yīng)具備以下功能目標(biāo),主要包括:(1)系統(tǒng)登錄:該模塊負(fù)責(zé)將用戶分為普通會(huì)員和注冊(cè)用戶來(lái)實(shí)現(xiàn)用戶權(quán)限的管理。(2)系統(tǒng)注冊(cè):該模塊負(fù)責(zé)普通用戶的增添。(3)活動(dòng)申請(qǐng):這個(gè)??熘猩鐔T與社長(zhǎng)均可以向?qū)W校管理員進(jìn)行活動(dòng)申請(qǐng)以獲得活動(dòng)所需要的各種資源。學(xué)校管理員有批準(zhǔn)活動(dòng)是否進(jìn)行的權(quán)力,活動(dòng)組織者只有在網(wǎng)站上獲得老師的同意時(shí)才可以將活動(dòng)繼續(xù)進(jìn)行下去,反之則終止活動(dòng)。 (4)權(quán)限管理??欤哼@個(gè)??炫c系統(tǒng)登錄結(jié)合在一起。在登錄的時(shí)候確定你是以
18、什么等級(jí)的用戶登錄,不同等級(jí)的用戶登錄進(jìn)去后對(duì)應(yīng)的界面也不相同,高等級(jí)用戶可以以低等級(jí)用戶的身份登入。(5)社團(tuán)列表??欤哼@個(gè)模快中將學(xué)校所有的社團(tuán)都簡(jiǎn)單的列舉了一下,這樣可以方便社員對(duì)學(xué)校各個(gè)社團(tuán)進(jìn)行了解,從而使他們可以更好的選擇適合自己的社團(tuán)。(6)個(gè)人信息修改模快:在這個(gè)??熘兴凶?cè)用戶均可以對(duì)自己的資料進(jìn)行修改,但一般社員與社長(zhǎng)不能修改自己的權(quán)限與所加入的社團(tuán)名稱。學(xué)校管理員可以修改自己的任何資料。(7)會(huì)員管理??欤哼@個(gè)功能只對(duì)社長(zhǎng)與學(xué)校管理員開放,社長(zhǎng)有對(duì)本社社員進(jìn)行增、刪、查、改等管理,而學(xué)校管理員可以對(duì)學(xué)校所有社員進(jìn)行管理,其中包括社長(zhǎng)的任命。(8)經(jīng)費(fèi)管理??欤哼@個(gè)功能主要
19、對(duì)社團(tuán)費(fèi)用情況進(jìn)行記錄。(9)社團(tuán)管理模塊:這個(gè)功能對(duì)社團(tuán)進(jìn)行記錄。 第二章 系統(tǒng)關(guān)鍵技術(shù)的分析在社團(tuán)管理系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)中,涉及的技術(shù)較為廣泛,其中最主要采用的技術(shù)是JSP技術(shù),通過(guò)對(duì)JSP技術(shù)的分析,對(duì)系統(tǒng)的關(guān)鍵技術(shù)的了解,可以對(duì)系統(tǒng)的實(shí)現(xiàn)得到較好的支持。2.1 JSP技術(shù) JSP(Java Server Pages)是由Sun Microsystems公司倡導(dǎo)、許多公司參與一起建立的一種HYPERLINK /view/348756.htm動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn)。JSP技術(shù)有點(diǎn)類似ASP技術(shù),它是在傳統(tǒng)的HYPERLINK /view/828.htm網(wǎng)頁(yè)HTML文件(*.htm,*.HYPERLI
20、NK /view/692.htmhtml)中插入JavaHYPERLINK /view/1005329.htm程序段(Scriptlet)和JSP標(biāo)記(tag),從而形成JSP文件(*.jsp)。 用JSP開發(fā)的Web應(yīng)用是跨平臺(tái)的,既能在Linux下運(yùn)行,也能在其他HYPERLINK /view/880.htm操作系統(tǒng)上運(yùn)行。 JSP是一種基于Java的腳本技術(shù)。在JSP 的眾多優(yōu)點(diǎn)之中,其中之一是它能將 HTML 編碼從 Web 頁(yè)面的業(yè)務(wù)邏輯中有效地分離出來(lái)。用 JSP 訪問(wèn)可重用的組件,如 Servlet、JavaBean 和基于 Java 的 Web 應(yīng)用程序。JSP 還支持在 We
21、b 頁(yè)面中直接嵌入 Java 代碼。可用兩種方法訪問(wèn) JSP 文件:瀏覽器發(fā)送 JSP 文件請(qǐng)求、發(fā)送至 Servlet 的請(qǐng)求。 JSP技術(shù)使用Java編程語(yǔ)言編寫類XML的tags和scriptlets,來(lái)封裝產(chǎn)生動(dòng)態(tài)HYPERLINK /doc/3683001.html網(wǎng)頁(yè)的處理邏輯。網(wǎng)頁(yè)還能通過(guò)tags和scriptlets訪問(wèn)存在于服務(wù)端的資源的應(yīng)用邏輯。JSP將網(wǎng)頁(yè)邏輯與HYPERLINK /doc/4458083.html網(wǎng)頁(yè)設(shè)計(jì)和顯示分離,支持可重用的基于組件的設(shè)計(jì),使基于Web的HYPERLINK /doc/3417785.html應(yīng)用程序的開發(fā)變得迅速和容易。WebHYPE
22、RLINK /doc/4487696.html服務(wù)器在遇到訪問(wèn)JSP網(wǎng)頁(yè)的請(qǐng)求時(shí),首先執(zhí)行其中的程序段,然后將執(zhí)行結(jié)果連同JSP文件中的HTMLHYPERLINK /doc/4469555.html代碼一起返回給客戶。插入的Java程序段可以操作HYPERLINK /doc/187927.html數(shù)據(jù)庫(kù)、重新定向網(wǎng)頁(yè)等,以實(shí)現(xiàn)建立動(dòng)態(tài)網(wǎng)頁(yè)所需要的功能。 (1) JSP 文件訪問(wèn) Bean 或其它能將生成的動(dòng)態(tài)內(nèi)容發(fā)送到瀏覽器的組件。圖5-1說(shuō)明了該 JSP 訪問(wèn)模型。當(dāng) Web 服務(wù)器接收到一個(gè) JSP 文件請(qǐng)求時(shí),服務(wù)器將請(qǐng)求發(fā)送至 WebServe應(yīng)用服務(wù)器。WebServer應(yīng)用服務(wù)器
23、對(duì) JSP 文件進(jìn)行語(yǔ)法分析并生成 Java 源文件(被編譯和執(zhí)行為 Servlet)。Java 源文件的生成和編譯僅在初次調(diào)用 Servlet 時(shí)發(fā)生,除非已經(jīng)更新了原始的 JSP 文件。在這種情況下,WebServe應(yīng)用服務(wù)器 將檢測(cè)所做的更新,并在執(zhí)行它之前重新生成和編譯 Servlet。 圖2.1瀏覽器發(fā)送 (2)JSP 文件請(qǐng)求發(fā)送至 Servlet 的請(qǐng)求生成動(dòng)態(tài)內(nèi)容,并調(diào)用 JSP 文件將內(nèi)容發(fā)送到瀏覽器。圖5-2說(shuō)明了該訪問(wèn)模型。該訪問(wèn)模型使得將內(nèi)容生成從內(nèi)容顯示中分離出來(lái)更為方便。WebSphere應(yīng)用服務(wù)器支持 HttpServiceRequest 對(duì)象和 HttpServ
24、iceResponse 對(duì)象的一套新方法。這些方法允許調(diào)用的 Servlet 將一個(gè)對(duì)象放入(通常是一個(gè) Bean)請(qǐng)求對(duì)象中,并將該請(qǐng)求傳遞到另一個(gè)頁(yè)面(通常是一個(gè) JSP 文件)以供顯示。調(diào)用的頁(yè)面從請(qǐng)求對(duì)象中檢索Bean, 并用 JSP 來(lái)生成客戶機(jī)端的 HTML。2.2 Tomcat簡(jiǎn)介TOMCAT是APACHE JAKARTA軟件組織的一個(gè)子項(xiàng)目,TOMCAT是一個(gè)JSP/SERVLET容器,它是在SUN公司的JSWDK(JAVA SERVER WEB DEVELOPMENT KIT)基礎(chǔ)上發(fā)展起來(lái)的一個(gè)JSP和SERVLET規(guī)范的標(biāo)準(zhǔn)實(shí)現(xiàn),使用TOMCAT可以體驗(yàn)JSP和SERVL
25、ET的最新規(guī)范。經(jīng)過(guò)多年的發(fā)展,TOMCAT不僅是JSP和SERVLET規(guī)范的標(biāo)準(zhǔn)實(shí)現(xiàn),而且具備了很多商業(yè)JAVA SERVLET容器的特性,并被一些企業(yè)用于商業(yè)用途。 Tomcat 運(yùn)行時(shí)占用的系統(tǒng)資源小,擴(kuò)展性好,支持負(fù)載平衡與郵件服務(wù)等開發(fā)應(yīng)用系統(tǒng)常用的功能;而且它還在不斷的改進(jìn)和完善中,任何一個(gè)感興趣的程序員都可以更改它或在其中加入新的功能。Tomcat 是一個(gè)小型的輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問(wèn)用戶不是很多的場(chǎng)合下被普遍使用,是開發(fā)和調(diào)試JSP 程序的首選。對(duì)于一個(gè)初學(xué)者來(lái)說(shuō),可以這樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好Apache 服務(wù)器,可利用它響應(yīng)對(duì)HTML 頁(yè)面的訪問(wèn)請(qǐng)求。實(shí)
26、際上Tomcat 部分是Apache 服務(wù)器的擴(kuò)展,但它是獨(dú)立運(yùn)行的,所以當(dāng)你運(yùn)行tomcat 時(shí),它實(shí)際上作為一個(gè)與Apache 獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。 2.2.1 SERVLET容器負(fù)責(zé)處理客戶請(qǐng)求。當(dāng)客戶請(qǐng)求來(lái)到時(shí),SERVLET容器獲取請(qǐng)求,然后調(diào)用某個(gè)SERVLET,并把SERVLET的執(zhí)行結(jié)果返回給客戶。當(dāng)客戶請(qǐng)求某個(gè)資源時(shí),SERVLET容器使用SERVLETREQUEST對(duì)象把客戶的請(qǐng)求信息封裝起來(lái),然后調(diào)用JAVA SERVLET API中定義的SERVLET的一些生命周期方法,完成SERVLET的執(zhí)行,接著把SERVLET執(zhí)行的要返回給客戶的結(jié)果封裝到SERVLETRESP
27、ONSE對(duì)象中,最后SERVLET容器把客戶的請(qǐng)求發(fā)送給客戶,完成為客戶的一次服務(wù)過(guò)程。TOMCAT的默認(rèn)工作模式,作為獨(dú)立的SERVLET容器,是內(nèi)置在WEB服務(wù)器中的一部分,是指使用基于JAVA的WEB服務(wù)器的情形。SERVLET容器作為WEB服務(wù)器的插件和JAVA容器的實(shí)現(xiàn)。WEB服務(wù)器的插件在內(nèi)部地址空間打開一個(gè)JVM(JAVA VIRTUAL MACHINE)使JAVA容器得以在內(nèi)部運(yùn)行。如有某個(gè)需要調(diào)用SERVLET的請(qǐng)求,插件將取得對(duì)此請(qǐng)求的控制并將它傳遞(使用JNI)給JAVA容器。進(jìn)程內(nèi)的容器對(duì)于多線程、單進(jìn)程的服務(wù)器非常適合,并且提供了很好的運(yùn)行速度,只是伸縮性有所不足。注
28、意:JNI是JAVA NATIVE INTERFACE的縮寫,是JAVA本地調(diào)用接口,通過(guò)JNI,JAVA程序可以和其他語(yǔ)言編寫的本地程序進(jìn)行通信。SERVLET容器運(yùn)行于WEB服務(wù)器之外的地址空間,并且作為WEB服務(wù)器的插件和JVM使用IPC(如TCP/IP)進(jìn)行通信。進(jìn)程外容器的反應(yīng)時(shí)間不如進(jìn)程內(nèi)的容器,但有較好的伸縮性、穩(wěn)定性等性能。IPC INTERPROCESS COMMUNICATION(進(jìn)程間通信)的簡(jiǎn)寫,它是實(shí)現(xiàn)進(jìn)程間通信的一種技術(shù)。2.2.2 TOMCAT的組織結(jié)構(gòu)TOMCAT是一個(gè)基于組件的服務(wù)器,它的構(gòu)成組件都是可配置的,其中最外層的給件是CATALINA SERVLET
29、容器,其他的組件按照一定的格式要求配置在這個(gè)頂層容器中。TOMCAT的各個(gè)組件是confserver.xml文件中配置的,TOMCAT服務(wù)器默認(rèn)情況下對(duì)各種組件都有默認(rèn)的實(shí)現(xiàn),下面通過(guò)分析server.xml文件來(lái)理解TOMCAT的各個(gè)組件是如何組織的。 頂層元素,代表一個(gè)服務(wù)器 頂層元素,是Connector的集合,只有一個(gè)Engine 連接器類元素,代表通信接口 容器類元素,為特定的Service組件處理所有客戶請(qǐng)求,可包含多個(gè)Host 為特定的虛擬主機(jī)處理所有客戶請(qǐng)求 為特定的WEB應(yīng)用處理所有客戶請(qǐng)求 TOMCAT中真正處理客戶請(qǐng)求與生成響應(yīng)的三個(gè)組件是Engine 、Host、 Co
30、ntext2.3 Java技術(shù)Java技術(shù)是一門編程語(yǔ)言,也是一個(gè)平臺(tái),它基于Java虛擬機(jī)技術(shù),借助這個(gè)東西建立了跨平臺(tái)的優(yōu)勢(shì)。Java編程語(yǔ)言與眾不同之處在于:Java程序既是編譯型的(轉(zhuǎn)換為一種稱為Java字節(jié)碼的中間語(yǔ)言),又是解釋型的(JVM 對(duì)字節(jié)碼進(jìn)行解析和運(yùn)行)。編譯只進(jìn)行一次,而解釋在每次運(yùn)行程序時(shí)都會(huì)進(jìn)行。編譯后的字節(jié)碼采用一種針對(duì)JVM 優(yōu)化過(guò)的機(jī)器碼形式;解釋器是JVM 的實(shí)現(xiàn)。這段是摘自網(wǎng)上的,編譯原理學(xué)的不是很好,對(duì)這門語(yǔ)言的背后運(yùn)行機(jī)制理解到這樣了。Java平臺(tái)是一種純軟件平臺(tái),它有三個(gè)版本Java SE、JavaEE、Java ME。Java SE(Java P
31、latform,Standard Edition)這個(gè)版本以前叫做J2SE,后來(lái)版本號(hào)從1.4直接跳到5.0,其實(shí)也就是1.5,所以就叫成Java SE 5.0。目前Java開發(fā)人員使用較多的版本是5.0,當(dāng)然還有Java SE 6.0這個(gè)更新的版本。它允許開發(fā)和部署在桌面、服務(wù)器、嵌入式環(huán)境和實(shí)時(shí)環(huán)境中使用的Java 應(yīng)用程序。Java SE還包含了支持Java Web服務(wù)開發(fā)的類,并為Java EE這個(gè)版本提供基礎(chǔ)。Java EE(Java Platform,Enterprise Edition)這個(gè)版本以前叫做J2EE,也就是大家可能聽得比較多的,也是Java比較流行的領(lǐng)域,Java的企
32、業(yè)級(jí)版本。Java EE下有很多流行的開發(fā)框架,像Struts、Spring、Hibernate這種流行的所謂SSH組合等。根據(jù)項(xiàng)目大小、應(yīng)用領(lǐng)域,技術(shù)平臺(tái)的選擇面還是很多的,除了Java EE,還有.Net,LAMP組合(Linux、Apatch、MySql、PHP組合),相對(duì)來(lái)說(shuō)比較新Ruby在Ruby on Rails的框架應(yīng)用,后兩者可能在相對(duì)來(lái)說(shuō)比較輕量級(jí)的Web領(lǐng)域運(yùn)用成功案例比較多,更重量的企業(yè)級(jí)潛力還有待挖掘。Java ME(Java Platform,Micro Edition)這個(gè)版本以前叫做J2ME。應(yīng)用領(lǐng)域像各種移動(dòng)設(shè)備和嵌入式設(shè)備,比如:手機(jī)、PDA、電視機(jī)頂盒和打印
33、機(jī)。Java ME不是太熟悉,不過(guò)移動(dòng)設(shè)備和嵌入式設(shè)備的開發(fā)個(gè)人覺得算是比較有意思的領(lǐng)域,最近比較矚目的業(yè)界新聞?dòng)幸粋€(gè)就是Google發(fā)布開源智能手機(jī)操作系統(tǒng)開發(fā)平臺(tái)Android,也就是前一陣子炒得很火的GPhone(原來(lái)Google出的不是手機(jī),而是一個(gè)手機(jī)操作系統(tǒng)開發(fā)平臺(tái))。這個(gè)平臺(tái)貌似會(huì)對(duì)Java ME有些沖擊,按照網(wǎng)上的消息,Android包括:1、高度定制的Linux操作系統(tǒng)內(nèi)核及智能手機(jī)硬件驅(qū)動(dòng)支持;2、經(jīng)過(guò)Google修改過(guò)的Java虛擬機(jī)Dalvik,這里的性能比SUN的Hotspot高,支持大部分Java核心類庫(kù);3、大量智能手機(jī)開發(fā)核心類庫(kù);4、大量現(xiàn)成的智能手機(jī)應(yīng)用軟件
34、;5、基于Eclipse的開發(fā)環(huán)境。也是按照網(wǎng)上的說(shuō)法,Java EE提供了統(tǒng)一的編程平臺(tái),但不能調(diào)用操作系統(tǒng)的資源;而Android下直達(dá)操作系統(tǒng),上直達(dá)應(yīng)用軟件,如:瀏覽器、日歷、地圖等。Java開發(fā)工具很多,個(gè)人使用的IDE有Eclipse和NetBeans。Eclispe比較流行,各種插件也多,當(dāng)然用起來(lái)也不錯(cuò);NetBeans現(xiàn)在也是越做越好了,介紹這兩個(gè)IDE主要是開源的,當(dāng)然還有其它工具如JBuilder、IntelliJ、JCreator。這些IDE各有優(yōu)勢(shì)劣勢(shì),根據(jù)你開發(fā)的項(xiàng)目來(lái)選擇了。2.4 MySQL簡(jiǎn)介MySQL是一個(gè)小型關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),開發(fā)者為瑞典MySQL A
35、B公司。在2008年1月16號(hào)被Sun公司收購(gòu)。而2009年,SUN又被Oracal收購(gòu).對(duì)于Mysql的前途,沒有任何人抱樂(lè)觀的態(tài)度.目前MySQL被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫(kù)。My SQL有以下特性:(1)使用C和C+編寫,并使用了多種 HYPERLINK /view/487018.htm t _blank 編譯器進(jìn)行測(cè)試,保證源代碼的可移植性。 (2)支持AIX、 HYPERLINK /view/21459.htm t _blank Fr
36、eeBSD、HP-UX、 HYPERLINK /view/1634.htm t _blank Linux、Mac OS、 HYPERLINK /view/68826.htm t _blank Novell Netware、OpenBSD、OS/2 Wrap、Solaris、Windows等多種操作系統(tǒng) 。(3)為多種編程語(yǔ)言提供了API。這些編程語(yǔ)言包括 HYPERLINK /view/10075.htm t _blank C、C+、 HYPERLINK /view/21087.htm t _blank Python、Java、 HYPERLINK /view/46614.htm t _bla
37、nk Perl、 HYPERLINK /view/99.htm t _blank PHP、Eiffel、Ruby和Tcl等。 (4)支持 HYPERLINK /view/65706.htm t _blank 多線程,充分利用CPU資源 。(5)優(yōu)化的 HYPERLINK /view/34.htm t _blank SQL查詢算法,有效地提高查詢速度。 (6)既能夠作為一個(gè)單獨(dú)的應(yīng)用程序應(yīng)用在客戶端服務(wù)器網(wǎng)絡(luò)環(huán)境中,也能夠作為一個(gè)庫(kù)而嵌入到其他的軟件中提供多語(yǔ)言支持,常見的 HYPERLINK /view/237708.htm t _blank 編碼如中文的GB 2312、BIG5,日文的Shi
38、ft_JIS等都可以用作數(shù)據(jù)表名和數(shù)據(jù)列名。(7)提供TCP/IP、ODBC和JDBC等多種數(shù)據(jù)庫(kù)連接途徑 。(8)提供用于管理、檢查、優(yōu)化數(shù)據(jù)庫(kù)操作的管理工具。 (9)可以處理?yè)碛猩锨f(wàn)條記錄的大型數(shù)據(jù)庫(kù)。第三章 社團(tuán)管理系統(tǒng)的需求分析3.1 系統(tǒng)的需求分析3.1.1系統(tǒng)的功能需求 軟件開發(fā)前的需求分析是軟件成敗的關(guān)鍵,如果沒有進(jìn)行詳細(xì)的需求分析 ,沒有充分理解系統(tǒng)的各類用戶的實(shí)際需求 ,那么最終的軟件產(chǎn)品充其量只能說(shuō)是軟件開發(fā)者的作品而已 ,沒任何實(shí)用價(jià)值可言。因此 ,在開發(fā)基于JSP的社團(tuán)管理系統(tǒng)之初 ,對(duì)系統(tǒng)需求進(jìn)行了詳細(xì)的分析,系統(tǒng)所實(shí)現(xiàn)的最終目標(biāo) :就是要使社團(tuán)管理實(shí)現(xiàn)全面的規(guī)范化
39、、 科學(xué)化、 自動(dòng)化、 高效化和流程化。對(duì)于社團(tuán)管理來(lái)說(shuō) ,主要是社員的管理,信息的發(fā)布,信息的收集,活動(dòng)的管理,社團(tuán)的介紹,經(jīng)費(fèi)管理等等。該系統(tǒng)是基于web開發(fā)的高校社團(tuán)管理系統(tǒng),利用ssh框架完成的。擁有的功能有:用戶登陸、注冊(cè)、修改信息。新建、修改、刪除、查詢社團(tuán)會(huì)員。新建、修改、刪除、查詢社團(tuán)活動(dòng)。申請(qǐng)、修改、刪除、查詢社團(tuán)經(jīng)費(fèi)。新建、修改、刪除、查詢、提交、審批社團(tuán)。因此 ,一個(gè)社團(tuán)管理系統(tǒng)應(yīng)該具有如下的功能:個(gè)人信息的修改。學(xué)校所有社團(tuán)的介紹功能。會(huì)員列表及查詢信息?;顒?dòng)列表、新建活動(dòng)及查詢活動(dòng)。社團(tuán)經(jīng)費(fèi)的管理。包括經(jīng)費(fèi)列表、新建經(jīng)費(fèi)及查詢經(jīng)費(fèi)。社團(tuán)管理包括社團(tuán)列表及查詢社團(tuán)。個(gè)人
40、中心包括修改密碼及修改資料。社團(tuán)成員管理功能。為社長(zhǎng)或?qū)W校管理人員對(duì)普通社員的一些信息進(jìn)行增、刪、改、查等操作。社長(zhǎng)或普通社員要舉辦活動(dòng)需要在網(wǎng)上申請(qǐng),得到學(xué)校領(lǐng)導(dǎo)同意即可舉辦活動(dòng)。系統(tǒng)功能模塊圖如圖3.1所示。圖3.1 系統(tǒng)功能模塊圖3.1.2系統(tǒng)的運(yùn)行需求軟件方面:系統(tǒng)將用Windows 7操作系統(tǒng)和Tomcat6.0以上版本,以MyEclipse8.5 為開發(fā)和測(cè)試平臺(tái),前臺(tái)以JSP為前端界面編輯環(huán)境,后臺(tái)用MySQL5.5來(lái)管理數(shù)據(jù)庫(kù)。運(yùn)行時(shí)對(duì)JDK的版本要求為1.6。硬件方面:PIII500 CPU 或更高配置,256M內(nèi)存或更高,20G以上硬盤,更好有10M共享帶寬或更高。3.2
41、系統(tǒng)的用例需求3.2.1系統(tǒng)用戶角色用例分析社團(tuán)管理系統(tǒng)主要面對(duì)三類用戶,即普通社員、社團(tuán)管理者、學(xué)校管理員,不同的角色完成不同功能.。因此,在設(shè)計(jì)系統(tǒng)時(shí),將系統(tǒng)的整體功能劃分成三個(gè)子系統(tǒng),即普通社員子系統(tǒng)、社團(tuán)管理子系統(tǒng)和學(xué)校管理員子系統(tǒng)。 這三個(gè)系統(tǒng)由于其面對(duì)的用戶不同,其功能也不同,具有相對(duì)獨(dú)立性,但它們又是緊密聯(lián)系和相互關(guān)聯(lián)的,如圖3.2所示。圖3.2 用戶關(guān)系角色圖3.2.2普通社員子系統(tǒng)用例分析普通社員子系統(tǒng)的主要功能包括活動(dòng)申請(qǐng)、社團(tuán)信息查看、個(gè)人信息修改等。在這里所有用戶都必須登錄才能進(jìn)入系統(tǒng),它不對(duì)非注冊(cè)用戶開放,如圖3.3所示。圖3.3 普通社員子系統(tǒng)用例圖3.2.3社長(zhǎng)子
42、系統(tǒng)用例分析社長(zhǎng)子系統(tǒng)是專門為社長(zhǎng)管理本社團(tuán)內(nèi)部事務(wù)而設(shè)計(jì)的,社長(zhǎng)在登錄時(shí)在“登錄類型”里選擇社長(zhǎng)這個(gè)選項(xiàng)就可以以社長(zhǎng)身份登錄進(jìn)入系統(tǒng),當(dāng)然社長(zhǎng)也有權(quán)以普通社員的身份登入系統(tǒng)中,當(dāng)以普通社員身份登入系統(tǒng)時(shí)其權(quán)限將與普通社員一樣。社團(tuán)管理者主要有對(duì)本社社員管理、活動(dòng)申請(qǐng)、修改個(gè)人信息,經(jīng)費(fèi)管理等功能。社團(tuán)管理者登入系統(tǒng)時(shí)就可以進(jìn)入社員管理界面,如圖3.4所示。圖3.4 社團(tuán)管理者子系統(tǒng)用例圖3.2.4管理員子系統(tǒng)用例分析 管理員子系統(tǒng)包括前臺(tái)所有功能的維護(hù),主要有新聞信息管理,全校所有社員信息管理、活動(dòng)批準(zhǔn)。如圖3.5所示。 圖3.5 系統(tǒng)管理員子系統(tǒng)用例圖第四章 社團(tuán)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 在通
43、過(guò)需求分析之后,則進(jìn)入項(xiàng)目的具體設(shè)計(jì)階段,在此階段需要完成的有詳細(xì)功能設(shè)計(jì),數(shù)據(jù)庫(kù)設(shè)計(jì),界面設(shè)計(jì),軟件結(jié)構(gòu)設(shè)計(jì),然后編碼完成功能實(shí)現(xiàn),最終通過(guò)測(cè)試之后,交付使用。4.1 系統(tǒng)數(shù)據(jù)分析在需求分析的用例分析中,可以得出社團(tuán)管理系統(tǒng)的數(shù)據(jù)字典分析和概念設(shè)計(jì)的實(shí)體。4.1.1 系統(tǒng)的數(shù)據(jù)字典分析數(shù)據(jù)字典是用來(lái)定義數(shù)據(jù)流圖中各個(gè)成分的具體含義的,它以一種準(zhǔn)確的、無(wú)二義性的說(shuō)明方式為系統(tǒng)的分析、設(shè)計(jì)及維護(hù)提供了有關(guān)元素的一致的定義和詳細(xì)的描述。它和數(shù)據(jù)流圖共同構(gòu)成了系統(tǒng)的邏輯模型,是需求規(guī)格說(shuō)明書的主要組成部分。數(shù)據(jù)字典有以下四類條目:數(shù)據(jù)流、數(shù)據(jù)項(xiàng)、數(shù)據(jù)存儲(chǔ)、處理邏輯。數(shù)據(jù)項(xiàng)是組成數(shù)據(jù)流和數(shù)據(jù)存儲(chǔ)的最小
44、元素。源點(diǎn)、終點(diǎn)不在系統(tǒng)之內(nèi),故一般不在字典中說(shuō)明。經(jīng)過(guò)對(duì)系統(tǒng)的用例分析,對(duì)系統(tǒng)中的實(shí)體進(jìn)行了查找和分析,最終得出系統(tǒng)的數(shù)據(jù)字典中共有三個(gè)子系統(tǒng)模塊,在數(shù)據(jù)庫(kù)中設(shè)計(jì)成為6張數(shù)據(jù)表。表4.1 普通注冊(cè)用戶表概念名:普通注冊(cè)用戶表組成:包括用戶ID、名稱、登錄賬號(hào)、密碼、用戶職務(wù)等內(nèi)容表4.2 社團(tuán)會(huì)員表概念名:社團(tuán)會(huì)員表組成:會(huì)員id、會(huì)員編號(hào)(系統(tǒng)生成唯一不重復(fù))、會(huì)員姓名、所在社團(tuán)、職務(wù)、加入時(shí)間、性別、所在班級(jí)、院系、寢室,電話、備注表4.3 社團(tuán)活動(dòng)表概念名:社團(tuán)活動(dòng)表組成:id、活動(dòng)主題、舉辦活動(dòng)社團(tuán)名稱、活動(dòng)編號(hào)(系統(tǒng)生成)、活動(dòng)舉辦時(shí)間、活動(dòng)負(fù)責(zé)人、社聯(lián)監(jiān)查人、承辦單位、活動(dòng)主要內(nèi)
45、容 表4.4 社團(tuán)經(jīng)費(fèi)表概念名:社團(tuán)經(jīng)費(fèi)表組成:id、申請(qǐng)社團(tuán)名稱、尚有金額、申請(qǐng)金額、申請(qǐng)人名稱、審批人、審批狀態(tài)、審批日期、備注表4.5 社團(tuán)信息表概念名:社團(tuán)信息表組成:id、社團(tuán)編號(hào)、社團(tuán)名稱、負(fù)責(zé)人、創(chuàng)始人、成立日期、社團(tuán)性質(zhì)、社團(tuán)簡(jiǎn)介、社團(tuán)收費(fèi)情況、社團(tuán)共有經(jīng)費(fèi)、社團(tuán)審批通過(guò)或駁回狀態(tài)、備注表4.6 職務(wù)信息表概念名:職務(wù)信息表組成Id、職務(wù)名稱、備注4.1.2 系統(tǒng)ER模型分析 概念模型是對(duì)信息世界建模,所以概念模型能夠方便、準(zhǔn)確地表示出信息世界中的常用概念。概念模型一般用E-R圖來(lái)描述現(xiàn)實(shí)世界的概念模型,E-R方法也稱E-R模型。E-R模型的關(guān)鍵元素是實(shí)體、屬性和聯(lián)系。實(shí)體是可
46、以從用戶的工作環(huán)境中標(biāo)識(shí)出的事物,是用戶想要跟蹤的某個(gè)事物。實(shí)體在E-R圖中,用矩形表示,矩形框內(nèi)寫明實(shí)體名。實(shí)體具有屬性,有時(shí)也稱作性質(zhì),是用來(lái)描述實(shí)體的特征的。屬性可以是組合的或者多值的。在E-R圖中,屬性用橢圓形表示,并用無(wú)向邊將其與相應(yīng)的實(shí)體連接起來(lái)。實(shí)體可以通過(guò)聯(lián)系相互關(guān)聯(lián)。在一般的聯(lián)系中,使用二元聯(lián)系居多,二元聯(lián)系主要有三種類型l:1,1:n,m: n。在“l(fā):1”聯(lián)系中,一種類型的單個(gè)實(shí)體實(shí)例與另一個(gè)類型的單個(gè)實(shí)體實(shí)例關(guān)聯(lián)。在“l(fā): n”聯(lián)系中,一個(gè)類型的單個(gè)實(shí)體實(shí)例與另一個(gè)類型的多個(gè)實(shí)體實(shí)例相關(guān)聯(lián)。在“m: n”聯(lián)系中,一個(gè)類型的單個(gè)實(shí)例與另一個(gè)類型的多個(gè)實(shí)體實(shí)例相關(guān)聯(lián),同時(shí)地
47、,后一類型的單個(gè)實(shí)體實(shí)例與前一類型的多個(gè)實(shí)體實(shí)例相關(guān)聯(lián)。在ER圖中,聯(lián)系用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無(wú)向邊分別與有關(guān)實(shí)體連接起來(lái),同時(shí)在無(wú)向邊旁標(biāo)上聯(lián)系的類型(1:1,l: n或者m: n)。以下是各實(shí)體的屬性:(1)社員實(shí)體。社員信息主要包含了表明社員在系統(tǒng)中的基本登陸信息和標(biāo)識(shí)了會(huì)員的編號(hào)。圖4.1是會(huì)員信息的所有屬性。圖4.1普通社員實(shí)體圖(2)社團(tuán)實(shí)體。社團(tuán)信息主要包含了社團(tuán)創(chuàng)始人、社團(tuán)編號(hào)、社團(tuán)名稱、負(fù)責(zé)人、成立時(shí)間。圖4.2是社團(tuán)實(shí)體的所有屬性。圖4.2社團(tuán)實(shí)體圖(3)經(jīng)費(fèi)實(shí)體。圖4.3是經(jīng)費(fèi)實(shí)體的所有屬性。圖4.3 經(jīng)費(fèi)實(shí)體圖經(jīng)費(fèi)信息包含了申請(qǐng)經(jīng)費(fèi)的社團(tuán)名稱、尚有金額、申
48、請(qǐng)金額、申請(qǐng)人名稱、審批人名稱、時(shí)間。(4)活動(dòng)實(shí)體?;顒?dòng)實(shí)體主要包含了活動(dòng)活動(dòng)內(nèi)容、活動(dòng)主題、活動(dòng)地點(diǎn)、活動(dòng)時(shí)間、申請(qǐng)時(shí)間、所需資金、是否批準(zhǔn)、活動(dòng)編號(hào)、贊助。圖4.4是系統(tǒng)信息的所有屬性。圖4.4活動(dòng)實(shí)體圖4.2 系統(tǒng)總體設(shè)計(jì)系統(tǒng)總體設(shè)計(jì)主要完成設(shè)計(jì)軟件系統(tǒng)結(jié)構(gòu)和各組成部分之間的相互關(guān)系的任務(wù)。為了實(shí)現(xiàn)目標(biāo)系統(tǒng),首先進(jìn)行結(jié)構(gòu)設(shè)計(jì)。具體方法為:(1)采用某種設(shè)計(jì)方法,將一個(gè)復(fù)雜的系統(tǒng)按功能劃分成模塊。(2)確定每個(gè)模塊的功能。(3)確定模塊之間的調(diào)用關(guān)系。(4)確定模塊之間的接口,即模塊之間傳遞的信息。(5)評(píng)價(jià)模塊結(jié)構(gòu)的質(zhì)量。軟件總體設(shè)計(jì)的主要任務(wù)就是軟件結(jié)構(gòu)的設(shè)計(jì),為了提高設(shè)計(jì)的質(zhì)量,必
49、須根據(jù)軟件設(shè)計(jì)的原理改進(jìn)軟件設(shè)計(jì),遵循如下軟件結(jié)構(gòu)的設(shè)計(jì)優(yōu)化準(zhǔn)則:(1)劃分模塊時(shí),盡量做到高內(nèi)聚、低耦合,保持模塊相對(duì)獨(dú)立性,并以此原則優(yōu)化初始的軟件結(jié)構(gòu)。(2)一個(gè)模塊的作用范圍應(yīng)在其控制范圍之內(nèi)。模塊的作用范圍是指受該模塊內(nèi)一個(gè)判定影響的所有模塊的集合。模塊的控制范圍是指模塊本身以及所有從屬于它的模塊的集合,包括直接從屬的和間接從屬的。判定所在的模塊應(yīng)與受其影響的模塊在層次上盡量靠近。(3)軟件結(jié)構(gòu)的深度、寬度、扇入、扇出應(yīng)適當(dāng)。深度是指軟件結(jié)構(gòu)中控制的層數(shù);寬度是指軟件結(jié)構(gòu)中同一層次上模塊總數(shù)的最大值;扇出是指一個(gè)模塊直接調(diào)用的模塊數(shù);扇入是指一個(gè)模塊有多少上一級(jí)模塊調(diào)用它。軟件結(jié)構(gòu)從
50、形態(tài)上,總的考慮是頂層扇出數(shù)較高一些,中間層扇出數(shù)較低一些,底層扇入數(shù)較高一些。(4)模塊的大小要適中。經(jīng)驗(yàn)證明,模塊的大小在50行左右(兩屏幕可以顯示的行數(shù))較為合適。過(guò)大的模塊不易理解,過(guò)小的模塊增加了系統(tǒng)接口的數(shù)量,加大了系統(tǒng)的不必要開銷。(5)模塊的接口要簡(jiǎn)單、清晰、含義明確,便于理解,易于實(shí)現(xiàn)、測(cè)試與維護(hù)。4.2.1 軟件結(jié)構(gòu)設(shè)計(jì) 圖4.5 系統(tǒng)模塊圖4.2.2 系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)在軟件開發(fā)過(guò)程中起著極其重要的作用。數(shù)據(jù)庫(kù)設(shè)計(jì)是否合理對(duì)整個(gè)軟件的開發(fā)是至關(guān)重要的。數(shù)據(jù)庫(kù)設(shè)計(jì)通常包括下述四個(gè)步驟:(1) 模式設(shè)計(jì)。模式設(shè)計(jì)的目的是確定物理數(shù)據(jù)結(jié)構(gòu)。一般用第三范式,第三范式形式的實(shí)
51、體及關(guān)系數(shù)據(jù)模型是模式設(shè)計(jì)過(guò)程的輸入,模式設(shè)計(jì)的主要問(wèn)題是處理具體的數(shù)據(jù)庫(kù)管理系統(tǒng)的結(jié)構(gòu)約束。(2) 子模式設(shè)計(jì)。子模式是用戶使用的數(shù)據(jù)視圖。(3) 完整性和安全性設(shè)計(jì)。(4) 優(yōu)化。主要目的是改進(jìn)模式和子模式以優(yōu)化數(shù)據(jù)的存取。下面是數(shù)據(jù)庫(kù)的詳細(xì)設(shè)計(jì),在數(shù)據(jù)庫(kù)project中的共有六張數(shù)據(jù)信息表,表4.6是整個(gè)系統(tǒng)中的表的匯總。表4.7 系統(tǒng)表匯總表名描述Activity此表主要是保存社團(tuán)活動(dòng)信息。Community此表用于保存社團(tuán)信息。Duty此表用于保存五種職務(wù)信息。Funds此表用于存儲(chǔ)經(jīng)費(fèi)申請(qǐng)信息。MemberUser此表用于保存社員信息。此表用于保存注冊(cè)用戶信息社團(tuán)活動(dòng)信息表(act
52、ivity)的主鍵是編號(hào)(activity_id),此表主要是保存社團(tuán)活動(dòng)信息。表4.8是社團(tuán)活動(dòng)信息表的詳細(xì)設(shè)計(jì)。表4.8 社團(tuán)活動(dòng)(activity)表列名類型說(shuō)明備注activity_idintId主鍵activity_themevarchar(255)活動(dòng)主題activity_communityvarchar(255)所屬社團(tuán)activity_namevarchar(255)活動(dòng)名稱 activity_codeint活動(dòng)編號(hào)activitydatedatetime活動(dòng)時(shí)間principalvarchar(255)活動(dòng)負(fù)責(zé)人hkcss_inspectionunitactivity_con
53、tentnotevarchar(255)varchar(255)varchar(255)varchar(255)社聯(lián)監(jiān)查人承辦單位活動(dòng)內(nèi)容備注 社團(tuán)信息表(community)的主鍵是編號(hào)(community_id),此表主要是保存社團(tuán)的各種信息,通過(guò)這張表可以查到社團(tuán)的詳細(xì)信息等。表4.8是會(huì)員權(quán)限信息表的詳細(xì)設(shè)計(jì)。表4.9 社團(tuán)信息(community)表列名類型說(shuō)明備注community_idintId主鍵community_namevarchar(255)社團(tuán)名稱community_codevarchar(255)社團(tuán)編號(hào)principalvarchar(255)新聞內(nèi)容founder
54、unitfounddatequaleintromoneycommunity_moneynotestateuser_accountvarchar(255)varchar(255)datevarchar(255)varchar(255)varchar(255)varchar(255)varchar(255)varchar(255)varchar(255)發(fā)布時(shí)間合作單位成立日期社團(tuán)性質(zhì)社團(tuán)簡(jiǎn)介社團(tuán)收費(fèi)社團(tuán)經(jīng)費(fèi)備注狀態(tài)用戶賬號(hào)職位信息表(duty)的主鍵是編號(hào)(duty_ID),此表主要是保存職位和對(duì)應(yīng)的職務(wù)id,與用戶表示一對(duì)多的關(guān)系。表4.10是職務(wù)信息表的詳細(xì)設(shè)計(jì)。表4.10 職務(wù)信息(dut
55、y)表列名類型說(shuō)明備注duty_IDintid主鍵duty_namevarchar(255)職務(wù)名稱duty_othervarchar(255)備注 經(jīng)費(fèi)申請(qǐng)信息表(funds)的主鍵是活動(dòng)編號(hào)(funds_id),此表主要是保存社團(tuán)經(jīng)費(fèi)相關(guān)的信息。表4.11是系統(tǒng)信息表的詳細(xì)設(shè)計(jì)。表4.11 經(jīng)費(fèi)申請(qǐng)信息(funds)表列名類型說(shuō)明備注funds_idfunds_communitysurplus_moneyfunds_moneyfunds_reasonfunds_peoplefunds_date examine_programexamine_peopleexamine_datenoteexa
56、mine_noteIntvarchar(255)varchar(255)varchar(255)varchar(255)datetimevarchar(255)varchar(255) varchar(255)varchar(255)varchar(255)varchar(255)Id申請(qǐng)社團(tuán)尚有金額申請(qǐng)金額申請(qǐng)理由申請(qǐng)人申請(qǐng)日期審批狀態(tài)審批人審批日期備注審批備注主鍵 會(huì)員信息表(member)的主鍵是編號(hào)(member_id),此表主要是保存所有社員信息。表4.12是社員信息表的詳細(xì)設(shè)計(jì)。 表4.12 社員信息(member)表列名類型說(shuō)明備注member_idIntid主鍵member_c
57、odemember_namemember_communitymember_dutyvarchar(255)varchar(255)varchar(255)varchar(255)會(huì)員編號(hào)會(huì)員名稱所在社團(tuán)名稱所在社團(tuán)擔(dān)任的職務(wù)joindatedatetime加入時(shí)間genderclassesdepartmentdormitorytelnotevarchar(255)varchar(255)varchar(255)varchar(255)varchar(255)varchar(255)性別班級(jí)院系寢室電話備注4.3 系統(tǒng)詳細(xì)設(shè)計(jì)詳細(xì)設(shè)計(jì)階段的根本目的是確定應(yīng)該怎樣具體地實(shí)現(xiàn)所要求的系統(tǒng),也就是在這
58、個(gè)階段的設(shè)計(jì)工作,應(yīng)該的出對(duì)目標(biāo)系統(tǒng)的精確描述,從而在編碼階段可以把這個(gè)描述直接翻譯成用某種程序設(shè)計(jì)語(yǔ)言書寫的程序。詳細(xì)設(shè)計(jì)階段的任務(wù)是設(shè)計(jì)出程序的“藍(lán)圖”,程序員以后根據(jù)這個(gè)藍(lán)圖寫出實(shí)際的程序代碼。詳細(xì)設(shè)計(jì)的目標(biāo)不僅僅是邏輯上正確地實(shí)現(xiàn)每個(gè)模塊地功能,更重要地是設(shè)計(jì)出的處理過(guò)程應(yīng)該盡可能簡(jiǎn)明易懂。在每個(gè)模塊中都有相應(yīng)的功能界面。結(jié)構(gòu)程序設(shè)計(jì)是實(shí)現(xiàn)上述目標(biāo)的關(guān)鍵技術(shù),是詳細(xì)設(shè)計(jì)的邏輯基礎(chǔ)。下面是系統(tǒng)中主要的功能模塊及其子功能模塊具體的實(shí)現(xiàn)方法(僅對(duì)一些典型模塊進(jìn)行說(shuō)明)。4.3.1用戶管理模塊(1)用戶登錄模塊用戶登錄模塊是整個(gè)系統(tǒng)最基礎(chǔ)也是必不可少的一個(gè)模塊,通過(guò)用戶登錄模塊對(duì)用戶的合法性進(jìn)
59、行有效的驗(yàn)證,以及對(duì)用戶的權(quán)限級(jí)別進(jìn)行識(shí)別。前臺(tái)界面通過(guò)JavaScript驗(yàn)證輸入的有效性,后臺(tái)業(yè)務(wù)層驗(yàn)證用戶的合法性。用戶登錄界面包括輸入賬號(hào)及密碼,假如密碼丟失,可以通過(guò)點(diǎn)擊忘記密碼來(lái)找回,回答原先設(shè)置的密保問(wèn)題,就可以找回密碼了。前臺(tái)用戶登錄界面如圖4.6所示。 圖4.6 登陸界面(2)用戶注冊(cè)模塊社員的添加是通過(guò)用戶注冊(cè)界面進(jìn)行注冊(cè)來(lái)完成的。注冊(cè)時(shí)有很多限制,這些限制都是為了使用戶正確填寫用戶資料,這些限制條件均用javaScript在JSP界面寫出來(lái)。如果用戶輸入的內(nèi)容與系統(tǒng)要求不符,系統(tǒng)均會(huì)以alert警示框的形式提醒新注冊(cè)用戶。注冊(cè)時(shí)的“賬號(hào)”不能與據(jù)庫(kù)中已經(jīng)存在賬號(hào)相同故在鼠
60、標(biāo)離開用戶名框時(shí)注冊(cè)界面就與數(shù)據(jù)庫(kù)進(jìn)行了賬號(hào)核對(duì),只有當(dāng)新注冊(cè)賬號(hào)在數(shù)據(jù)庫(kù)中不存在時(shí)才可以使注冊(cè)繼續(xù)進(jìn)行下去。通過(guò)填寫注冊(cè)用戶界面的用戶名、密碼、真實(shí)姓名、密保等問(wèn)題,來(lái)注冊(cè)賬號(hào),賬號(hào)是唯一的,必須記住,然后前往登錄界面登錄。圖4.7為用戶注冊(cè)的表單界面。圖4.7 用戶注冊(cè)界面(3)用戶修改模塊該??熘饕巧鐔T的借誤信息進(jìn)行修改。修改界面如圖4.8所示。圖4.8 社員信息修改界面(4)用戶刪除???。該??鞗]有對(duì)應(yīng)的界面,只配制了一個(gè)刪除按扭,點(diǎn)擊用戶資料旁邊的刪除按扭,該用戶將會(huì)被刪除。與刪除有關(guān)的界面如圖4.9所示。圖4.9刪除有關(guān)的界面4.3.2社團(tuán)介紹功能??欤?)社團(tuán)介紹??煸撃?熘皇?/p>
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《鄉(xiāng)土中國(guó)》整本書|閱讀教學(xué)
- 1.3運(yùn)動(dòng)的快慢說(shuō)課稿 2025年初中 人教版物理八年級(jí)上冊(cè)
- 門票變更通知函
- 橡膠件行業(yè)研究報(bào)告
- 建議駐廠通知函
- 語(yǔ)文基礎(chǔ)知識(shí)-主謂賓定狀補(bǔ)
- 江蘇省鎮(zhèn)江市丹徒區(qū)高資教育集團(tuán)四校聯(lián)考2024-2025學(xué)年七年級(jí)下學(xué)期3月月考英語(yǔ)試題(原卷版+解析版)
- 《商務(wù)英語(yǔ)筆譯》課件-第五模塊
- 長(zhǎng)用設(shè)備及物資(防汛物資采購(gòu))投標(biāo)方案(技術(shù)方案)
- 產(chǎn)品手冊(cè)設(shè)計(jì)參考
- 2025年合肥公交集團(tuán)有限公司駕駛員招聘180人預(yù)筆試參考題庫(kù)附帶答案詳解
- 2025年蘇州市職業(yè)大學(xué)單招職業(yè)適應(yīng)性測(cè)試題庫(kù)完美版
- (二模)2025年寶雞市高考模擬檢測(cè)試題(二)物理試卷(含答案)
- 營(yíng)銷管理實(shí)踐總結(jié)報(bào)告
- 基地種植合作合同范本
- 露天煤礦安全生產(chǎn)技術(shù)露天煤礦安全管理培訓(xùn)
- 2025年安徽警官職業(yè)學(xué)院?jiǎn)握新殬I(yè)傾向性測(cè)試題庫(kù)標(biāo)準(zhǔn)卷
- 2025年浙江寧波市江北區(qū)民政局招聘編外工作人員1人歷年高頻重點(diǎn)模擬試卷提升(共500題附帶答案詳解)
- YB-T 6121-2023 鋼的晶間氧化深度測(cè)定方法
- 2025屆中交投資有限公司全球校園招聘來(lái)了筆試參考題庫(kù)附帶答案詳解
- 2025年中國(guó)科協(xié)所屬單位招聘19名應(yīng)屆生歷年高頻重點(diǎn)模擬試卷提升(共500題附帶答案詳解)
評(píng)論
0/150
提交評(píng)論