




已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
河南大學(xué)2007屆本科畢業(yè)論文基于struts的學(xué)校家長聯(lián)系系統(tǒng)a connection system between school and parents based on struts論文作者姓名:王培 所在學(xué)院:計算機與信息工程學(xué)院 所學(xué)專業(yè):計算機科學(xué)與技術(shù) 導(dǎo)師姓名職稱:陳志國(教授)、周星(助教)論文完成時間:2007年5月20日 2007年5月20日河南大學(xué)2007屆畢業(yè)論文(設(shè)計、創(chuàng)作)開題報告學(xué)號03023236姓名王培導(dǎo)師姓名職稱陳志國(教授)周星(助教)開題時間2006年12月1日課題題目基于struts的學(xué)校家長聯(lián)系系統(tǒng)課題來源導(dǎo)師指定 自定 其他來源課題的目的、意義以及和本課題有關(guān)的國內(nèi)外現(xiàn)狀分析:1、目的:首先是希望有效解決目前中小學(xué)校中,家長和學(xué)校之間聯(lián)系脫節(jié)的問題;其次為了降低學(xué)校、家長聯(lián)系時所耗費的人力、財力。2、意義:一方面,解決了學(xué)校、家長聯(lián)系中存在的耗時、耗財、耗人力等實際問題;另一方面,使我對項目開發(fā)流程有了一個清晰的認識,提高了自己項目開發(fā)的能力。3、現(xiàn)狀:歐美等國軟件開發(fā)技術(shù)已經(jīng)很成熟了,相對而言我國還比較落后。但對家長學(xué)校聯(lián)系系統(tǒng)的開發(fā)而言,由于教育體制、風(fēng)俗習(xí)慣等的不同,開發(fā)過程中所要考慮的問題也有很大差別。在實際開發(fā)中,我們有自己的國情,自己的特殊體制和用戶習(xí)慣,因而發(fā)展空間很大。另外,正因為我國軟件業(yè)起步晚,在新技術(shù)的應(yīng)用等方面反而輕裝易行。研究目標(biāo)、研究內(nèi)容和準(zhǔn)備解決的問題:1、目標(biāo):開發(fā)一套界面友好、操作簡便、功能易于擴充、代碼可高度重用的學(xué)校家長聯(lián)系系統(tǒng)。2、內(nèi)容:分析學(xué)校、家長之間聯(lián)系的特點和需求,在此基礎(chǔ)上對項目本身進行了架構(gòu)設(shè)計、詳細設(shè)計、系統(tǒng)實現(xiàn),并關(guān)注于新技術(shù)的應(yīng)用。3、準(zhǔn)備解決的問題:實現(xiàn)多種框架之間的交叉應(yīng)用,揚長避短設(shè)計出性能最優(yōu)的應(yīng)用系統(tǒng),徹底解決現(xiàn)存的學(xué)校家長間機械的聯(lián)系方式帶來的問題。擬采取的方法、技術(shù)或設(shè)計(開發(fā))工具:開發(fā)工具:eclipse開發(fā)語言:java數(shù)據(jù)庫:sql server 2000預(yù)期成果:1、畢業(yè)設(shè)計成果學(xué)校家長聯(lián)系系統(tǒng)(源程序)2、畢業(yè)論文 基于struts的學(xué)校家長聯(lián)系系統(tǒng) 進度計劃:2006.12.1 - 2007.2.1:查找資料、搜集相關(guān)素材2007.2.2 - 2007.4.1:完成系統(tǒng)的需求分析、總體設(shè)計2007.4.2 - 2007.4.21:完成界面模塊、功能模塊部分的代碼實現(xiàn)2007.4.22 - 2007.4.30:完成模塊的整合和測試2007.5.1 - 2007.5.15:整理資料、撰寫畢業(yè)論文2007.5.16 - 2007.5.25:根據(jù)導(dǎo)師要求,完善畢業(yè)設(shè)計和論文指導(dǎo)教師對選題報告的意見:同意開題 指導(dǎo)教師簽名: 2006年12月1日開題報告ii河南大學(xué)2007屆畢業(yè)論文(設(shè)計、創(chuàng)作)任務(wù)書學(xué)號03023236姓名王培導(dǎo)師姓名陳志國、周星任務(wù)書起止日期2006年12月8日 至 2007年5月20日論文提要:論文將依照軟件工程中項目開發(fā)的原則和步驟,對項目開發(fā)流程進行詳細論述,包括需求分析、概要設(shè)計、數(shù)據(jù)庫設(shè)計、系統(tǒng)實現(xiàn)等過程。論文還將對新的開發(fā)技術(shù)、開發(fā)框架及設(shè)計思想結(jié)合本課題進行論述。課題任務(wù)要求:1.對提出的課題進行需求分析、概要及詳細設(shè)計。2.對項目進行整體的架構(gòu)設(shè)計,此時保證做到各個功能模塊分工明確,類之間任務(wù)劃分清楚,以避免后續(xù)設(shè)計遇到無法擴展的瓶頸。3.開發(fā)一套界面友好,操作簡便,功能易于擴充,代碼可高度重用的學(xué)校家長聯(lián)系系統(tǒng)。主要參考文獻:1 林杰斌,劉明德著,mis管理信息系統(tǒng) 第1版,清華大學(xué)出版社, 2006年5月2 孫衛(wèi)琴等,精通struts:基于mvc的java web設(shè)計與開發(fā) 第2版,電子工業(yè)出版社,2004年8月3 普雷斯曼等編著,鄭人杰等譯,軟件工程:實踐者的研究方法 第7版,機械工業(yè)出版社,2007年1月4 james r.groff,paul n.weinbery著,sql完全手冊 第二版,電子工業(yè)出版社,2006年6月5 bruce eckel著,java編程思想 第3版,機械工業(yè)出版社,2005年5月河南大學(xué)2007屆畢業(yè)設(shè)計(論文、創(chuàng)作)中期檢查表學(xué)院名稱:計算機與信息工程學(xué)院題目名稱基于struts的學(xué)校家長聯(lián)系系統(tǒng)學(xué)號03023236所學(xué)專業(yè)計算機科學(xué)與技術(shù)指導(dǎo)教師姓 名陳志國周星姓名王培一、畢業(yè)設(shè)計進展情況已經(jīng)完成了項目的可行性分析、需求分析和各種系統(tǒng)設(shè)計任務(wù)(包括概要設(shè)計、系統(tǒng)功能設(shè)計、數(shù)據(jù)庫設(shè)計和詳細設(shè)計),在此基礎(chǔ)之上對項目進行了架構(gòu)設(shè)計?,F(xiàn)在已經(jīng)完成了部分代碼的實現(xiàn)。二、存在問題架構(gòu)設(shè)計不夠合理,導(dǎo)致頁面跳轉(zhuǎn)邏輯不清楚,功能擴充不易實現(xiàn)。控制流程把握不夠好。三、下一階段的研究方法或設(shè)計思路研究方法:自頂向下逐步求精。設(shè)計思路:先完成各個模塊的設(shè)計,最后將模塊整合。四、指導(dǎo)教師對學(xué)生設(shè)計(論文、創(chuàng)作)進展等方面的評語 從目前的設(shè)計任務(wù)來看,進度稍微有點快,前期設(shè)計投入時間不夠,希望加強這方面的工作。 指導(dǎo)教師簽字: 2007年4月10日 河南大學(xué)2007屆畢業(yè)論文(設(shè)計、創(chuàng)作)綜合成績表(一)學(xué)院名稱:計算機與信息工程學(xué)院學(xué) 號03023236姓名王培專業(yè)計算機科學(xué)與技術(shù)指導(dǎo)教師陳志國(教授)、周星(助教)綜合得分87論文題目基于struts的學(xué)校家長聯(lián)系系統(tǒng)指導(dǎo)教師評語及得分指導(dǎo)教師評語該生畢業(yè)論文書寫格式規(guī)范,對所做工作表述清晰,完成的系統(tǒng)功能較完善,但功能擴充能力不夠。評分項目分值指導(dǎo)教師對畢業(yè)論文(設(shè)計、創(chuàng)作)評分撰寫開題報告、文獻綜述15調(diào)查研究查閱整理資料10學(xué)習(xí)態(tài)度與規(guī)范要求10數(shù)據(jù)處理、文字表達10論文(設(shè)計、創(chuàng)作)質(zhì)量和創(chuàng)新意識55合計100得分128975086指導(dǎo)教師簽名 2007年5月20日評閱教師評語及評分評閱教師評語該生論文文字表達較清晰,能夠準(zhǔn)確表達系統(tǒng)的功能,已達到本科畢業(yè)論文的要求,所開發(fā)的項目功能較完善。評分項目分值評閱畢業(yè)論文(設(shè)計、創(chuàng)作)評分撰寫開題報告、文獻綜述15調(diào)查研究查閱整理資料10學(xué)習(xí)態(tài)度與規(guī)范要求10數(shù)據(jù)處理、文字表達10論文(設(shè)計、創(chuàng)作)質(zhì)量和創(chuàng)新意識55合計100得分11 9 9 8 50 87評閱教師簽名 2007年5月21日此表由教師填寫河南大學(xué)2007屆畢業(yè)論文(設(shè)計、創(chuàng)作)綜合成績表(二)學(xué)號03023236姓名王培所在學(xué)院計算機與信息工程學(xué)院答辯委員會評語及評分答辯委員會評語該生在答辯過程中,表述清晰,語言簡練,回答問題較準(zhǔn)確,專業(yè)術(shù)語用詞較準(zhǔn)確,具有一定的專業(yè)功底,達到了本科畢業(yè)生的水平。 答辯委員簽字: 2007年5月26日評分 項目 分值論文答辯小組評分答辯情況論文質(zhì)量合計(100)內(nèi)容表達情況(15)答辯問題情況(25)規(guī)范要求與文字表達(20)論文(設(shè)計、創(chuàng)作)質(zhì)量和創(chuàng)新意識(40)得分 1223 173587答辯委員會主任簽字: 2007年5月26日畢業(yè)論文(設(shè)計、創(chuàng)作)成績綜合評定: 87 分綜合評定等級: 良備注:一、論文的質(zhì)量評定,應(yīng)包括對論文的語言表達、結(jié)構(gòu)層次、邏輯性理論分析、設(shè)計計算、分析和概括能力及在論文中是否有新的見解或創(chuàng)新性成果等做出評價。從論文來看學(xué)生掌握本專業(yè)基礎(chǔ)理論和基本技能的程度。二、成績評定采用結(jié)構(gòu)評分法,即由指導(dǎo)教師、評閱教師和答辯委員會分別給分(以百分計),評閱教師得分乘以20%加上指導(dǎo)教師得分乘以20%加上答辯委員會得分乘以60%即綜合成績。評估等級按優(yōu)、良、中、差劃分,優(yōu)90-100分;良76-89分;中60-75分;差60分以下。三、評分由專業(yè)教研室或院組織專門評分小組(不少于5人),根據(jù)指導(dǎo)教師和答辯委員會意見決定每個學(xué)生的分?jǐn)?shù),在有爭議時,應(yīng)由答辯委員會進行表決。四、畢業(yè)論文答辯工作結(jié)束后,各院應(yīng)于6月20日前向教務(wù)處推薦優(yōu)秀論文以匯編成冊,推薦的篇數(shù)為按當(dāng)年學(xué)院畢業(yè)生人數(shù)的1.5%篇。五、各院亦可根據(jù)本專業(yè)的不同情況,制定相應(yīng)的具有自己特色的內(nèi)容。須報教務(wù)處備案。六、書寫格式要求:1、目錄;2、內(nèi)容提要須書寫200左右漢字,開題報告(文科除外)的內(nèi)容要根據(jù)不同專業(yè)的課題任務(wù)要求,闡述查閱文獻、文案論證、解題思路、工作步驟等;3、正文(含引言、結(jié)論等);4、參考文獻(或資料)河南大學(xué)本科生畢業(yè)論文(設(shè)計、創(chuàng)作)承諾書論文題目基于struts的學(xué)校家長聯(lián)系系統(tǒng)姓 名王培所學(xué)專業(yè)計算機科學(xué)與技術(shù)學(xué) 號03023236完成時間2007年5 月20日指導(dǎo)教師姓名職稱陳志國(教授)、周星(助教)承諾內(nèi)容:1、本畢業(yè)論文(設(shè)計、創(chuàng)作)是學(xué)生 王培 在導(dǎo)師 陳志國 、 周星 的指導(dǎo)下獨立完成的,沒有抄襲、剽竊他人成果,沒有請人代做,若在畢業(yè)論文(設(shè)計、創(chuàng)作)的各種檢查、評比中被發(fā)現(xiàn)有以上行為,愿按學(xué)校有關(guān)規(guī)定接受處理,并承擔(dān)相應(yīng)的法律責(zé)任。2、學(xué)校有權(quán)保留并向上級有關(guān)部門送交本畢業(yè)論文(設(shè)計、創(chuàng)作)的復(fù)印件和磁盤。備注:學(xué)生簽名: 指導(dǎo)教師簽名: 2007年5月20日 2007年5月20日說明:學(xué)生畢業(yè)論文(設(shè)計、創(chuàng)作)如有保密等要求,請在備注中明確,承諾內(nèi)容第2條即以備注為準(zhǔn)。目 錄摘 要iabstractii第1章 緒論11.1 管理信息系統(tǒng)簡介11.2 開發(fā)背景及意義11.3 開發(fā)工具簡介21.4 開發(fā)框架及應(yīng)用技術(shù)介紹21.4.1 開發(fā)框架21.4.2 開發(fā)中所用技術(shù)31.4.3 mvc設(shè)計模式3第2章 系統(tǒng)需求分析52.1 編寫目的52.2 項目背景及開發(fā)目標(biāo)52.3 系統(tǒng)簡介52.4 系統(tǒng)功能分析62.5 數(shù)據(jù)庫需求分析6第3章 系統(tǒng)設(shè)計83.1 概要設(shè)計83.2 數(shù)據(jù)庫設(shè)計93.2.1 數(shù)據(jù)庫概念設(shè)計93.2.2 數(shù)據(jù)庫邏輯設(shè)計103.3 系統(tǒng)詳細設(shè)計123.3.1 符號代碼設(shè)計123.3.2 數(shù)據(jù)結(jié)構(gòu)設(shè)計123.3.3 算法設(shè)計13第4章 系統(tǒng)實現(xiàn)144.1 系統(tǒng)中對象的創(chuàng)建144.2 系統(tǒng)功能模塊實現(xiàn)144.2.1 首頁訪問的實現(xiàn)144.2.2 用戶登錄模塊功能實現(xiàn)164.2.3 家長用戶模塊功能實現(xiàn)174.2.4 班主任用戶模塊功能實現(xiàn)184.2.5 管理員模塊功能實現(xiàn)204.3 系統(tǒng)安全性的實現(xiàn)22結(jié) 論24參考文獻25河南大學(xué)本科畢業(yè)生學(xué)士學(xué)位論文摘 要隨著計算機技術(shù)的飛速發(fā)展,各種傳統(tǒng)的信息管理方式正不斷被依助于計算機進行信息管理的現(xiàn)代管理方式所取代,而學(xué)校和家長之間的聯(lián)系實際上也是一種信息管理,但由于各種原因,它依舊采用傳統(tǒng)的方式,沒有走向信息化。學(xué)校家長聯(lián)系系統(tǒng)的開發(fā)可以解決傳統(tǒng)方式帶來的耗時、滯后、耗財、耗人力等問題,方便家長與學(xué)校之間進行聯(lián)系,提高學(xué)校對學(xué)生信息的管理效率,減輕教師的工作量。本論文通過對系統(tǒng)的需求分析、概要設(shè)計、數(shù)據(jù)庫設(shè)計、系統(tǒng)實現(xiàn)等過程的描述,論述了開發(fā)一個管理信息系統(tǒng)(management information system)mis的基本流程。本系統(tǒng)使用java開發(fā),集成開發(fā)環(huán)境選用了java 2 enterprise edition,開發(fā)框架選用了基于j2ee 的struts框架,以servlet和jsp為主要技術(shù)。關(guān)鍵詞 管理信息系統(tǒng),面向?qū)ο蠹夹g(shù),mvc三層設(shè)計模式,javabeansabstractwith the rapid development of computer technology, traditional methods of information managements are being unceasingly substituted by the modern management approach which manages information by computers. in fact, the contact mode between school and guardians is also a kind of information management form. but because of various reasons, it still uses the traditional mode and has not moved towards the information time yet.the development of the connection system is to solve problems brought by the traditional mode such as time,money,labor consuming and so on . with the system, parents and school can connect with each other conveniently.and, it can improve the efficiency of student management and relieve the burden of teachers work. this paper elaborats the basic flow of mis supported by the description of demand analysis, outline design, database design, system realization and so on.the system takes java as its development language, j2ee as integration development environment, struts which based on j2ee as the developing framework, servlet and jsp as the developing technology.keywords management information system, object-oriented technology, mvc design pattern, javabeans 第 24 頁第1章 緒論管理信息系統(tǒng)是現(xiàn)代企業(yè)、事業(yè)單位提高自身管理效率,加快本單位信息檢索和加強信息管理能力必須倚重的軟件系統(tǒng)。管理信息系統(tǒng)的表現(xiàn)形式多種多樣,但其基本目的、功能和設(shè)計原則都是相通的。1.1 管理信息系統(tǒng)簡介管理信息系統(tǒng)的主要功能包括:1.數(shù)據(jù)處理:包括數(shù)據(jù)收集和輸入、數(shù)據(jù)傳輸、數(shù)據(jù)存儲、數(shù)據(jù)加工處理和輸出。它準(zhǔn)備和提供統(tǒng)一格式的信息,使各種統(tǒng)計工作簡化,使信息成本最低。2.預(yù)測功能:運用現(xiàn)代數(shù)學(xué)方法、統(tǒng)計方法或模擬方法,根據(jù)過去的數(shù)據(jù)預(yù)測未來的情況。3.計劃功能:根據(jù)企業(yè)提供的約束條件,合理地安排各職能部門的計劃,按照不同的管理層,提供相應(yīng)的計劃報告。1.2 開發(fā)背景及意義目前,對我國中小學(xué)校而言,學(xué)校和家長之間聯(lián)系不密切,甚至于聯(lián)系脫節(jié)。學(xué)校和家長之間的聯(lián)系有的還停留在家長去學(xué)校開家長會,學(xué)校派教師到學(xué)生家中進行家訪的階段,這樣的方式已經(jīng)不能適應(yīng)時代的發(fā)展,因為它浪費了許多人力和物力,在信息時代這種傳統(tǒng)的管理方法必然被以計算機為基礎(chǔ)的信息管理所取代。開發(fā)這套學(xué)校家長聯(lián)系系統(tǒng)用于家長了解學(xué)生在學(xué)校期間的學(xué)習(xí)情況,家長可以查詢孩子的學(xué)習(xí)成績(期末和平時單元測驗)、到校和放學(xué)的時間、學(xué)校要求家長配合的有關(guān)事項(公告);同時學(xué)校也可以使用本系統(tǒng)發(fā)布信息,查看家長對學(xué)校工作的反饋意見,并在一定程度上減輕了學(xué)校管理部門的工作(如學(xué)生成績排名、成績分析等)。1.3 開發(fā)工具簡介選擇一套合適的開發(fā)工具是順利完成項目開發(fā)的重要條件,在本系統(tǒng)的開發(fā)中,所用到的工具軟件是eclipse java 編輯器、photoshop 圖形處理軟件、sql lserver 2000 數(shù)據(jù)庫以及java語言。其中,eclipse是一個開放源代碼的、基于java的整合型可擴展開發(fā)平臺,也是目前最著名的開源項目之一。就其本身而言,它只是一個框架和一組服務(wù),用于通過插件組件構(gòu)建開發(fā)環(huán)境。eclipse附帶了一個標(biāo)準(zhǔn)的插件集,包括java開發(fā)工具(java development tools,jdt)。其未來的目標(biāo)不僅僅是成為專門開發(fā)java程序的ide環(huán)境,而是根據(jù)eclipse的體系結(jié)構(gòu),通過開發(fā)插件,它能擴展到任何語言的開發(fā),甚至能成為圖片繪制的工具。eclipse是一個開放源代碼的軟件開發(fā)項目,專注于為高度集成的工具開發(fā)提供一個全功能的、具有商業(yè)品質(zhì)的工業(yè)平臺。它主要由eclipse項目、eclipse工具項目和eclipse技術(shù)項目三個項目組成,具體包括四個部分組成-eclipse platform、jdt、cdt和pde。jdt支持java開發(fā)、cdt支持c開發(fā)、pde用來支持插件開發(fā),eclipse platform則是一個開放的可擴展ide,提供了一個通用的開發(fā)平臺,它提供建造塊和構(gòu)造并運行集成軟件開發(fā)工具的基礎(chǔ)。1.4 開發(fā)框架及應(yīng)用技術(shù)介紹目前,各種軟件公司林立,軟件公司之間的競爭日趨激烈,要想在這樣的市場上占有一席之地,就必須提高自己軟件開發(fā)的速度,降低開發(fā)周期,提高軟件產(chǎn)品的可靠性。此時,好的技術(shù)、框架的選用就顯得特別重要了。1.4.1 開發(fā)框架本系統(tǒng)在開發(fā)過程中采用了struts開發(fā)框架。所謂struts開發(fā)框架,是由一系列規(guī)則定義的一個程序開發(fā)模板,可應(yīng)用于web應(yīng)用程序的開發(fā)。在web應(yīng)用中恰到好處的使用struts,可節(jié)省從頭開始設(shè)計框架的時間,使得開發(fā)人員可以把精力集中在如何解決實際業(yè)務(wù)問題上。1.4.2 開發(fā)中所用技術(shù)java web應(yīng)用的核心技術(shù)是java server page 和servlet。此外,開發(fā)一個完整的java web應(yīng)用還涉及以下概念及技術(shù):1.javabeans 組件2.ejb組件3.xml4.web服務(wù)器和應(yīng)用服務(wù)器1.4.3 mvc設(shè)計模式mvc英文即model-view-controller,即把一個應(yīng)用的輸入、處理、輸出流程按照model、view、controller的方式進行分離,這樣一個應(yīng)用被分成三個層模型層、視圖層、控制層。視圖(view)代表用戶交互界面,對于web應(yīng)用來說,可以概括為html界面,但有可能為xhtml、xml和applet。業(yè)務(wù)流程的處理交予模型(model)處理。模型(model):就是業(yè)務(wù)流程/狀態(tài)的處理以及業(yè)務(wù)規(guī)則的制定。業(yè)務(wù)流程的處理過程對其它層來說是黑箱操作,模型接受視圖請求的數(shù)據(jù),并返回最終的處理結(jié)果。業(yè)務(wù)模型的設(shè)計可以說是mvc最主要的核心。目前流行的ejb模型就是一個典型的應(yīng)用例子,它從應(yīng)用技術(shù)實現(xiàn)的角度對模型做了進一步的劃分,以便充分利用現(xiàn)有的組件,但它不能作為應(yīng)用設(shè)計模型的框架。它僅僅告訴你按這種模型設(shè)計就可以利用某些技術(shù)組件,從而減少了技術(shù)上的困難。對一個開發(fā)者來說,就可以專注于業(yè)務(wù)模型的設(shè)計。mvc設(shè)計模式告訴我們,把應(yīng)用的模型按一定的規(guī)則抽取出來,抽取的層次很重要,這也是判斷開發(fā)人員是否優(yōu)秀的設(shè)計依據(jù)。抽象與具體不能隔得太遠,也不能太近。mvc并沒有提供模型的設(shè)計方法,而只告訴你應(yīng)該組織管理這些模型,以便于模型的重構(gòu)和提高重用性??捎脤ο缶幊虂碜霰扔?,mvc定義了一個頂級類,告訴它的子類你只能做這些,但沒法限制你能做這些。這點對編程開發(fā)人員非常重要。控制(controller)可以理解為從用戶接收請求,將模型與視圖匹配在一起,共同完成用戶的請求。劃分控制層的作用也很明顯,它清楚地告訴你,它就是一個分發(fā)器,選擇什么樣的模型,選擇什么樣的視圖,可以完成什么樣的用戶請求??刂茖硬⒉蛔鋈魏蔚臄?shù)據(jù)處理。例如,用戶點擊一個連接,控制層接受請求后, 并不處理業(yè)務(wù)信息,它只把用戶的信息傳遞給模型,告訴模型做什么,選擇符合要求的視圖返回給用戶。因此,一個模型可能對應(yīng)多個視圖,一個視圖可能對應(yīng)多個模型。第2章 系統(tǒng)需求分析需求分析從狹義上講,最直接的是用戶對目標(biāo)系統(tǒng)的需求,即用戶在信息管理中對應(yīng)用系統(tǒng)所產(chǎn)生的各種各樣的和可能的需要,這種需要是對應(yīng)用系統(tǒng)開發(fā)的定位和最基本的立足點,這種定位不應(yīng)該局限于目前的需要,還應(yīng)該有一個長遠需求的預(yù)測,以盡可能提高系統(tǒng)應(yīng)用的生命周期。2.1 編寫目的在對學(xué)校家長聯(lián)系系統(tǒng)軟件市場做了前期調(diào)查,同時與多位軟件使用者進行全面深入地探討和分析之后,完成了系統(tǒng)需求分析。在需求分析中對學(xué)校家長聯(lián)系系統(tǒng)軟件做了全面細致的分析,明確所要開發(fā)的軟件應(yīng)具有的功能、性能與界面,使系統(tǒng)分析人員及軟件開發(fā)人員能清楚地了解用戶的需求,并在此基礎(chǔ)上進一步提出概要設(shè)計說明書和完成后續(xù)設(shè)計與開發(fā)工作。該分析的預(yù)期讀者為客戶、業(yè)務(wù)或需求分析人員、測試人員、用戶文檔編寫者、項目管理人員。2.2 項目背景及開發(fā)目標(biāo)a)背景:受櫻開中學(xué)委托,開發(fā)櫻開學(xué)校家長聯(lián)系系統(tǒng)。b)目標(biāo):開發(fā)一套性能穩(wěn)定,界面友好的學(xué)校家長聯(lián)系系統(tǒng)。2.3 系統(tǒng)簡介本系統(tǒng)用于家長進行學(xué)生在學(xué)校的學(xué)習(xí)情況、學(xué)習(xí)成績(期末和平時單元測驗)、到校和放學(xué)的時間查詢以及學(xué)校要求家長配合的有關(guān)事項(公告)的查詢;同時學(xué)校也可以用本系統(tǒng)了解學(xué)生在校的活動和表現(xiàn),以及家長對學(xué)校工作的意見、建議,以減輕學(xué)校管理部門的工作(如學(xué)生成績排名,成績分析等)。2.4 系統(tǒng)功能分析本系統(tǒng)有三種不同角色的用戶。這三個角色分別是:家長、班主任以及系統(tǒng)管理員。他們的角色、權(quán)限不同,因而所要執(zhí)行的操作也有很大差別。家長用戶權(quán)限最低。他僅能訪問自己孩子的信息、學(xué)校公告,并可以對學(xué)校工作提出意見等。由此確定其對應(yīng)的操作:學(xué)生成績、在校時間查詢,學(xué)校新聞瀏覽,發(fā)表意見等。而對于教師來說,他可以執(zhí)行的功能操作有:學(xué)生信息的錄入、修改、刪除等操作(包括姓名、家長號、離、到校時間等);成績信息的錄入、修改、刪除等操作(包括成績、時段、科目等);查看花名冊、查看班級成績列表等。系統(tǒng)管理員所要執(zhí)行的功能操作有:公告信息管理、用戶信息管理兩大部分。其中公告信息管理又包括:學(xué)校公告管理,公告信息的刪除、更新、修改(包括公告日期、內(nèi)容、主題等),家長意見管理,家長意見的刪除、查看等。用戶管理是指管理員有權(quán)對比其權(quán)限低的用戶進行操作。管理員用戶可以指定、刪除班主任用戶,可以分配、刪除其他管理員用戶等。在此基礎(chǔ)上,有三個大的功能模塊。它們分別為不同的用戶服務(wù),共同構(gòu)成整個系統(tǒng)的功能框架。2.5 數(shù)據(jù)庫需求分析數(shù)據(jù)庫需求需要從三個方面進行分析,分別為信息需求,信息處理要求,設(shè)計需要遵循的準(zhǔn)則。首先是信息需求。它是指用戶需要從數(shù)據(jù)庫中獲得信息的內(nèi)容與性質(zhì),由信息要求可以導(dǎo)出數(shù)據(jù)要求,即在數(shù)據(jù)庫中需要存儲哪些數(shù)據(jù)。本系統(tǒng)中有三類基本用戶:家長、教師、管理員。家長從數(shù)據(jù)庫中獲得子女的在校信息,包括在校時間,成績查詢,學(xué)校公告(這些信息家長僅僅有查詢的權(quán)限,而不能修改、刪除、更新)以及其他家長發(fā)表的建議、評論等。教師需要從數(shù)據(jù)庫中提取班級學(xué)生信息,班級成績信息,可以錄入、修改、刪除、更新學(xué)生信息和班級成績等。管理員需要從數(shù)據(jù)庫中獲取學(xué)校公告信息,家長意見,用戶信息等。其次是處理要求。家長用戶所要完成的處理:學(xué)生在校信息查詢,學(xué)生成績查詢,學(xué)校公告信息查詢,發(fā)表意見等。班主任用戶所要完成的處理:學(xué)生信息錄入、修改、更新、刪除、查詢等;學(xué)生成績信息的錄入、修改、更新、刪除、查詢等。系統(tǒng)管理員所要完成的操作:學(xué)校公告信息的更新、刪除、插入、查詢等;家長信息的刪除、查詢等。班主任、管理員用戶的分配、刪除、信息修改等。最后在進行表設(shè)計時要注意主鍵的安排,表之間的聯(lián)系,實體范圍的確定等,以免造成數(shù)據(jù)庫的大量冗余,從而保證了實體完整性和參照完整性。第3章 系統(tǒng)設(shè)計系統(tǒng)設(shè)計是在前期需求分析的基礎(chǔ)上提出的。它將著重對系統(tǒng)漸進的實現(xiàn)過程進行論述。這是一個重要的過程,系統(tǒng)能否實現(xiàn),系統(tǒng)軟件產(chǎn)品質(zhì)量的好壞都與此有關(guān),必須把握好設(shè)計的方法、流程甚至于細節(jié)。3.1 概要設(shè)計概要設(shè)計是對系統(tǒng)在最高抽象層上的設(shè)計,它不應(yīng)關(guān)注于系統(tǒng)功能的實現(xiàn)細節(jié)。下面給出概要設(shè)計的過程和結(jié)果。首先:對系統(tǒng)進行模塊劃分,設(shè)計每個模塊涉及的信息處理。教師功能模塊:a)學(xué)生資料的輸入。包括學(xué)號、姓名、性別、到校時間、離校時間、家庭編號等。b)成績錄入。包括課程號、成績、成績所屬時段等。c)課程設(shè)置。包括課程號、課程名等。d)家長信息錄入。包括賬戶名、密碼、姓名、性別、家庭住址、聯(lián)系電話等。該信息錄入是通過家長用戶注冊的方式實現(xiàn)的。家長功能模塊:a)學(xué)生信息查詢。包括孩子到校時間查詢、離校時間查詢等。b)意見管理。包括查看意見薄、留言等。系統(tǒng)管理功能模塊:a)用戶管理。包括分配班主任用戶、分配系統(tǒng)管理員用戶、刪除班主任用戶、刪除系統(tǒng)管理員用戶等。注:班主任用戶和系統(tǒng)管理員用戶是不能自行隨意注冊的,他們是具有一定權(quán)限的用戶,須由現(xiàn)有管理員給予分配。b)信息管理。包括學(xué)校公告信息管理、家長意見管理。學(xué)校公告信息管理包括公告信息的刪除、增加、更新、修改等,管理員需要實時的發(fā)布學(xué)校公告信息。而家長意見管理功能又包括了瀏覽家長意見板、刪除家長留言等。其次,給出概要設(shè)計的結(jié)果,如圖3-1所示。圖3-1 系統(tǒng)模塊圖3.2 數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫設(shè)計是對系統(tǒng)所需要的一系列數(shù)據(jù)在經(jīng)過分析之后,進行實體歸納、設(shè)計。其目的在于在數(shù)據(jù)庫操作時能盡可能的減少冗余,提高數(shù)據(jù)完整性。3.2.1 數(shù)據(jù)庫概念設(shè)計數(shù)據(jù)庫概念設(shè)計用e-r圖來描述。下圖3-2給出了本系統(tǒng)中部分e-r圖。圖3-2 部分e-r圖實體關(guān)系圖描述了數(shù)據(jù)庫中各種實體的相互關(guān)系。從圖中可以確定家長、學(xué)生之間,學(xué)生、班主任之間,留言、家長之間存在的關(guān)系。這里只畫出了部分的實體關(guān)系模型。正是依賴于這些關(guān)系,才能夠把不同的表信息連接起來,在操作中保證實體的完整性,可以進行多表間的級聯(lián)操作等。3.2.2 數(shù)據(jù)庫邏輯設(shè)計上文中提到的多個模塊在實現(xiàn)過程中都與數(shù)據(jù)庫有著密切的聯(lián)系,因此數(shù)據(jù)庫的設(shè)計在本系統(tǒng)的開發(fā)過程中占有重要地位。以下是本系統(tǒng)中用到的部分表。學(xué)生信息表如表3-1所示。表3-1 stuinfo表 字段名字段類型字段長度是否主鍵意義stuidnvchar10是唯一標(biāo)識學(xué)生stunamenvchar16否姓名cometimedatetime8否到校時間gotimedatetime8否離校時間homeidnvchar15否家庭號teacheridnvchar15否教師號對于表3-1:其中stuid為主鍵,用來唯一的標(biāo)識一名學(xué)生。而homeid是家庭編號,它用來把每個學(xué)生和其家長對應(yīng)起來。家長可用此號訪問到自己孩子的信息。teacherid是班主任的編號,用于聯(lián)系學(xué)生表,從而可以對班級學(xué)生信息進行查詢、修改、刪除等操作。用戶信息表如表3-2所示。表3-2 userinfo表字段名字段類型字段長度是否主鍵意義usertypenvchar10否表示用戶類別useridnvchar20是唯一標(biāo)識用戶passwordnvchar20否密碼usernamenvchar20否用戶名usersexchar2否用戶性別對于表3-2:userid用來唯一標(biāo)識一名用戶,usertype用來區(qū)分不同用戶,如01表示管理員,02表示班主任用戶,03表示家長用戶。對于后兩種用戶,userid即是連接兩表的homeid或teacherid。留言信息表如表3-3所示。表3-3 messageinfo表字段名字段類型字段長度是否主鍵意義messageidint4key標(biāo)識一條留言messagetypenvchar5否公告類別useridnvchar20否留言人titlenvchar50否 標(biāo)題contentnvchar500否內(nèi)容datenvchardatetime否日期對于表3-3:messageid是主鍵,自動增量,用于唯一的標(biāo)識一條信息(學(xué)校公告或家長意見)。messagetype區(qū)分學(xué)校公告和家長意見,如01表示公告,02表示意見。userid記錄誰發(fā)表了留言。此屬性可用于連接表3-2和表3-3。由圖3-2的e-r圖導(dǎo)出的部分?jǐn)?shù)據(jù)庫表關(guān)系圖如圖3-3所示。圖3-3 數(shù)據(jù)庫部分表關(guān)系 3.3 系統(tǒng)詳細設(shè)計詳細設(shè)計是對概要設(shè)計確定的軟件和數(shù)據(jù)的總體框架的進一步精化,精化成軟件的算法和數(shù)據(jù)結(jié)構(gòu)等。3.3.1 符號代碼設(shè)計代碼是代表事物的名稱、屬性、狀態(tài)等的符號,為了便于計算機處理,一般用數(shù)字、字母或它們的組合來表示。它為事物提供一個概要而不模糊的認定,便于數(shù)據(jù)的存儲和檢索。使用代碼可以提高處理效率和精度,及數(shù)據(jù)的全局一致性。代碼的編碼方法有:順序碼、區(qū)間碼、助記碼。系統(tǒng)中用到的有:順序碼:01 管理員、02 班主任、03 家長。助記碼:userexists代表用戶名存在,stuinfoinsert代表學(xué)生信息錄入等。3.3.2 數(shù)據(jù)結(jié)構(gòu)設(shè)計在此以班主任模塊為例進行說明。為了方便班主任查看班級學(xué)生信息和學(xué)生成績,分別使用了二維數(shù)組來存儲這些信息。studentinfoxy中存放班級學(xué)生信息。其中x為班級人數(shù),y為每個學(xué)生對應(yīng)的屬性個數(shù)。3.3.3 算法設(shè)計為了控制程序的流向,避免大量的重復(fù)性操作,對程序進行一些算法設(shè)計。下面給出對用戶登錄中的轉(zhuǎn)向和取數(shù)據(jù)庫表的信息的方法的算法設(shè)計,設(shè)計語言選用pdl。1.在用戶登錄時,不同用戶需要登錄到不同的工作頁面中。為此做以下設(shè)計。case 用戶類別when 管理員 select 服務(wù)器端驗證,如果通過則把此用戶的登錄標(biāo)志性信息放在其session對象中,用于系統(tǒng)安全性控制。具體實現(xiàn)方法將在4.3節(jié)給出。然后轉(zhuǎn)向管理員工作頁面。when 班主任 select 除做上述操作之外,還把學(xué)生信息從數(shù)據(jù)庫中取出,以備班主任查詢,其目的在于提高用戶訪問站點的速度。然后轉(zhuǎn)向班主任工作頁面。when 家長 select 操作實現(xiàn)類似班主任。然后轉(zhuǎn)向家長工作頁面。default:登錄失敗。endcase2.取數(shù)據(jù)庫表信息。do while 數(shù)據(jù)庫表中還有符合條件的信息 將表中信息封裝成相應(yīng)的javabeans,以備用戶訪問。endwhile此算法設(shè)計為取各種表中信息,取數(shù)據(jù)時不區(qū)分表的類別,待取出信息后再封裝成不同的javabeans,比如messagebean等,以此避免重寫大量的取表信息的代碼。第4章 系統(tǒng)實現(xiàn)系統(tǒng)實現(xiàn)側(cè)重于系統(tǒng)功能的代碼實現(xiàn)。在本系統(tǒng)實現(xiàn)的過程中充分應(yīng)用了struts框架下的mvc設(shè)計思想。在java語言基礎(chǔ)上的web應(yīng)用開發(fā)因為tomcat 這一application server 的應(yīng)用,而省去了大量的關(guān)于用戶session管理的手動實現(xiàn)。4.1 系統(tǒng)中對象的創(chuàng)建本系統(tǒng)的開發(fā)中,依照struts框架的mvc設(shè)計思想,對系統(tǒng)中用到的對象做以下部署:繼承自actionservlet類的類用來進行邏輯控制,即mvc中的controller。例如系統(tǒng)中的view.do,用于進行用戶登錄時的轉(zhuǎn)向控制,不同的用戶將轉(zhuǎn)向不同的操作界面。jsp用來進行客戶端顯示,即mvc中的view。而javabeans用來實現(xiàn)信息的模塊封裝。程序通過瀏覽器區(qū)分客戶,對于每個客戶,application server都將自動創(chuàng)建一個session對象,一個用戶所需全局信息可置于其中(它其實是一個容器對象)用戶瀏覽器請求通過自動創(chuàng)建的request傳送,而所有關(guān)乎數(shù)據(jù)庫的操作都封裝在sqlexcute類中(自建類)。而各種經(jīng)過處理的信息都放在各種javabeans對象中,例如:學(xué)生信息放在studentbean中。所謂javabeans是有g(shù)etxxx(),setxxx()組成的java類,事實上是一種規(guī)則,以利于信息的訪問。4.2 系統(tǒng)功能模塊實現(xiàn)在系統(tǒng)設(shè)計的基礎(chǔ)上,依照設(shè)計的成果,選用具體的開發(fā)語言、環(huán)境,進行系統(tǒng)功能的代碼實現(xiàn)。4.2.1 首頁訪問的實現(xiàn)用戶在訪問站點時,沒有直接發(fā)送jsp頁面請求,而是將請求發(fā)給了seveletaction,并由它來重定向頁面請求。這樣做的好處在于可以把java實現(xiàn)的數(shù)據(jù)操作放在jb中,有seveletaction將jsp轉(zhuǎn)向和數(shù)據(jù)操作結(jié)合起來。因為在jsp中直接引用java代碼進行數(shù)據(jù)操作是不可取的。此時用戶請求的seveletaction中的代碼如下:arraylistalmb =new arraylist();sqlexcute.sqlconn();arraylistmessagelist=sqlexcute.getmessage(sql);sqlexcute.doclose();int length = messagelist.size();for(int i=length-1;ilength-3;i-)almb.add(messagelist.get(i);this.servlet.getservletcontext().setattribute(meslist,almb); return (mapping.findforward(viewgo);這段代碼放在一個繼承自actionservlet的類中,此類即是struts mvc 中的controller。它不做任何的數(shù)據(jù)處理,只是把用戶的請求和模型結(jié)合起來。數(shù)據(jù)庫訪問的操作都放在自定義的sqlexcute類中,以靜態(tài)方法的形式存在。而messagebean即是所謂的ejb,它是一種遵循了某些規(guī)則的java類。從數(shù)據(jù)庫中取出的公告信息被封裝成messagebean的對象之后放入servletcontext中,以備請求頁面的用戶預(yù)覽。controller獲取這些信息,并定向到用戶請求的頁面。正是ejb所遵循的規(guī)則,使這些以bean存放的信息可以在頁面以簡便的el語句輸出,如下代碼所示。 其中c:foreach是jsp的taglib,用于重用java代碼。效果如圖4-1所示。圖4-1 首頁界面4.2.2 用戶登錄模塊功能實現(xiàn)用戶登錄時需要向服務(wù)器提交登錄信息,而以什么形式提交這些信息才能最大限度的實現(xiàn)代碼的可重用性,struts也考慮到了這些。此時struts的taglib(標(biāo)簽)發(fā)揮了它完美的作用。標(biāo)簽定義一個用戶提交信息的表單,是它最初確定了要把表單提交到何處進行處理。而要完全實現(xiàn)對整個系統(tǒng)導(dǎo)航,必須用到struts-config.xml,它是一個配置文件,真正把用戶提交的表單封裝成一個formbean的類。這樣只需把該類和要提交到的servletaction在此配置文件中做一個映射即可。不必重寫formbean,只需通過多次映射便可多次使用該表單信息。下面代碼片斷為本系統(tǒng)中的一個映射。 此映射將loginform表單提交給login這樣一個servletaction類。表單信息以動態(tài)formbean的形式提交給login后,login調(diào)用sqlexcute數(shù)據(jù)庫的操作方法,判斷用戶類別,用戶是否存在(不存在就定向到注冊頁面),密碼是否正確等。(這里值得一提的是所有不牽涉數(shù)據(jù)庫操作的客戶端驗證均利用在jsp頁面進行驗證,如輸入長度,格式等。)待這些服務(wù)器端驗證成功時,再把對于一個用戶來說全程訪問的數(shù)據(jù)信息通過sqlexcute類提取出來,封裝成相應(yīng)的javabeans減少數(shù)據(jù)庫連接次數(shù)(這種連接要占用大量資源)以備用戶訪問。if(usertype.equals(03) if(juge=0).studentbean stuinfo=newstudentbean(sb.get(0),sb.get(1),sb.get(2),sb.get(3),sb.get(4),sb.get(5);stuinfo.parname = name;request.getsession().setattribute(scores,cb); request.getsession().setattribute(students,stuinfo);return (mapping.findforward(gopar);這段代碼中,首先判斷出該用戶是家長用戶,然后判斷出用戶存在。再把從數(shù)據(jù)庫中取出的孩子信息封裝成studentbean對象,放入用戶session對象,最后跳轉(zhuǎn)到家長工作的頁面。這是從用戶登錄中截取的一段代碼。在用戶登錄中要進行用戶角色劃分,以便不同用戶進入不同的工作模塊。這里是通過usertype這一屬性區(qū)分不同用戶。01表示管理員、02表示班主任、03表示家長。4.2.3 家長用戶模塊功能實現(xiàn)家長用戶主要執(zhí)行查詢、留言等操作。1.孩子在校信息、成績查詢在登錄之初,已經(jīng)在view.do中把這些信息封裝到相應(yīng)的javabeans中,放入session對象中,此時可以直接在頁面用el語句輸出即可。2.家長留言用于完成留言信息輸入。提交時,以動態(tài)frombean方式提交給相應(yīng)的繼承自action類的類。在此類中判斷用戶是否登錄。如登錄則將留言信息以家長用戶類型插入到數(shù)據(jù)庫留言表中,同時將操作提示返回給用戶。3.刪除留言用戶選擇刪除留言操作后,頁面將此信息提交給相應(yīng)的action去處理,action調(diào)用數(shù)據(jù)庫操作的類執(zhí)行刪除操作,并將操作結(jié)果的信息返回給頁面。4.2.4 班主任用戶模塊功能實現(xiàn)1.學(xué)生信息錄入班主任選擇學(xué)生信息錄入的操作,進入信息錄入界面。根據(jù)界面提示輸入學(xué)生信息,以動態(tài)formbean的形式提交給相應(yīng)的action類。此類調(diào)用數(shù)據(jù)庫操作類,判斷學(xué)生是否存在。如果不存在,則調(diào)用數(shù)據(jù)庫操作類將學(xué)生信息插入學(xué)生信息表。操作后要返回操作結(jié)果信息給班主任頁面。動態(tài)formbean是在struts-c
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年十堰市市直行政事業(yè)單位資產(chǎn)房屋租賃合同書
- 2025建筑工程材料供應(yīng)合同
- 2025企業(yè)單位的無薪休假合同模板
- 2025綠化工程勞務(wù)承包合同合同范本
- 高校護理專業(yè)介紹
- 野生動物傳染病檢疫學(xué)
- 2025年導(dǎo)管室試題及答案
- 【FastData】2023年中國旅游業(yè)復(fù)蘇趨勢報告6410mb
- 一年級班主任個人工作總結(jié)模版
- 幼兒園清明節(jié)活動總結(jié)模版
- GB/T 1839-2008鋼產(chǎn)品鍍鋅層質(zhì)量試驗方法
- GB/T 1725-2007色漆、清漆和塑料不揮發(fā)物含量的測定
- 制冷空調(diào)管件的焊接與質(zhì)量控制
- 公路工程工作總結(jié)范文
- DB11 2075-2022 建筑工程減隔震技術(shù)規(guī)程
- 課件:第七章 社會工作項目結(jié)項(《社會工作項目策劃與評估》課程)
- 大型火力發(fā)電廠汽輪機知識資料培訓(xùn)課件
- 陜旅版六年級下冊英語知識點總結(jié)V
- 中債收益率曲線和中債估值的編制與應(yīng)用課件
- 公共建筑設(shè)計原理五課件
- 《井岡翠竹》完整版課件解析
評論
0/150
提交評論