




已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
河南大學2007屆本科畢業(yè)論文基于struts的學校家長聯(lián)系系統(tǒng)a connection system between school and parents based on struts論文作者姓名:王培 所在學院:計算機與信息工程學院 所學專業(yè):計算機科學與技術 導師姓名職稱:陳志國(教授)、周星(助教)論文完成時間:2007年5月20日 2007年5月20日河南大學2007屆畢業(yè)論文(設計、創(chuàng)作)開題報告學號03023236姓名王培導師姓名職稱陳志國(教授)周星(助教)開題時間2006年12月1日課題題目基于struts的學校家長聯(lián)系系統(tǒng)課題來源導師指定 自定 其他來源課題的目的、意義以及和本課題有關的國內外現(xiàn)狀分析:1、目的:首先是希望有效解決目前中小學校中,家長和學校之間聯(lián)系脫節(jié)的問題;其次為了降低學校、家長聯(lián)系時所耗費的人力、財力。2、意義:一方面,解決了學校、家長聯(lián)系中存在的耗時、耗財、耗人力等實際問題;另一方面,使我對項目開發(fā)流程有了一個清晰的認識,提高了自己項目開發(fā)的能力。3、現(xiàn)狀:歐美等國軟件開發(fā)技術已經很成熟了,相對而言我國還比較落后。但對家長學校聯(lián)系系統(tǒng)的開發(fā)而言,由于教育體制、風俗習慣等的不同,開發(fā)過程中所要考慮的問題也有很大差別。在實際開發(fā)中,我們有自己的國情,自己的特殊體制和用戶習慣,因而發(fā)展空間很大。另外,正因為我國軟件業(yè)起步晚,在新技術的應用等方面反而輕裝易行。研究目標、研究內容和準備解決的問題:1、目標:開發(fā)一套界面友好、操作簡便、功能易于擴充、代碼可高度重用的學校家長聯(lián)系系統(tǒng)。2、內容:分析學校、家長之間聯(lián)系的特點和需求,在此基礎上對項目本身進行了架構設計、詳細設計、系統(tǒng)實現(xiàn),并關注于新技術的應用。3、準備解決的問題:實現(xiàn)多種框架之間的交叉應用,揚長避短設計出性能最優(yōu)的應用系統(tǒng),徹底解決現(xiàn)存的學校家長間機械的聯(lián)系方式帶來的問題。擬采取的方法、技術或設計(開發(fā))工具:開發(fā)工具:eclipse開發(fā)語言:java數(shù)據庫:sql server 2000預期成果:1、畢業(yè)設計成果學校家長聯(lián)系系統(tǒng)(源程序)2、畢業(yè)論文 基于struts的學校家長聯(lián)系系統(tǒng) 進度計劃:2006.12.1 - 2007.2.1:查找資料、搜集相關素材2007.2.2 - 2007.4.1:完成系統(tǒng)的需求分析、總體設計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:根據導師要求,完善畢業(yè)設計和論文指導教師對選題報告的意見:同意開題 指導教師簽名: 2006年12月1日開題報告ii河南大學2007屆畢業(yè)論文(設計、創(chuàng)作)任務書學號03023236姓名王培導師姓名陳志國、周星任務書起止日期2006年12月8日 至 2007年5月20日論文提要:論文將依照軟件工程中項目開發(fā)的原則和步驟,對項目開發(fā)流程進行詳細論述,包括需求分析、概要設計、數(shù)據庫設計、系統(tǒng)實現(xiàn)等過程。論文還將對新的開發(fā)技術、開發(fā)框架及設計思想結合本課題進行論述。課題任務要求:1.對提出的課題進行需求分析、概要及詳細設計。2.對項目進行整體的架構設計,此時保證做到各個功能模塊分工明確,類之間任務劃分清楚,以避免后續(xù)設計遇到無法擴展的瓶頸。3.開發(fā)一套界面友好,操作簡便,功能易于擴充,代碼可高度重用的學校家長聯(lián)系系統(tǒng)。主要參考文獻:1 林杰斌,劉明德著,mis管理信息系統(tǒng) 第1版,清華大學出版社, 2006年5月2 孫衛(wèi)琴等,精通struts:基于mvc的java web設計與開發(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月河南大學2007屆畢業(yè)設計(論文、創(chuàng)作)中期檢查表學院名稱:計算機與信息工程學院題目名稱基于struts的學校家長聯(lián)系系統(tǒng)學號03023236所學專業(yè)計算機科學與技術指導教師姓 名陳志國周星姓名王培一、畢業(yè)設計進展情況已經完成了項目的可行性分析、需求分析和各種系統(tǒng)設計任務(包括概要設計、系統(tǒng)功能設計、數(shù)據庫設計和詳細設計),在此基礎之上對項目進行了架構設計?,F(xiàn)在已經完成了部分代碼的實現(xiàn)。二、存在問題架構設計不夠合理,導致頁面跳轉邏輯不清楚,功能擴充不易實現(xiàn)。控制流程把握不夠好。三、下一階段的研究方法或設計思路研究方法:自頂向下逐步求精。設計思路:先完成各個模塊的設計,最后將模塊整合。四、指導教師對學生設計(論文、創(chuàng)作)進展等方面的評語 從目前的設計任務來看,進度稍微有點快,前期設計投入時間不夠,希望加強這方面的工作。 指導教師簽字: 2007年4月10日 河南大學2007屆畢業(yè)論文(設計、創(chuàng)作)綜合成績表(一)學院名稱:計算機與信息工程學院學 號03023236姓名王培專業(yè)計算機科學與技術指導教師陳志國(教授)、周星(助教)綜合得分87論文題目基于struts的學校家長聯(lián)系系統(tǒng)指導教師評語及得分指導教師評語該生畢業(yè)論文書寫格式規(guī)范,對所做工作表述清晰,完成的系統(tǒng)功能較完善,但功能擴充能力不夠。評分項目分值指導教師對畢業(yè)論文(設計、創(chuàng)作)評分撰寫開題報告、文獻綜述15調查研究查閱整理資料10學習態(tài)度與規(guī)范要求10數(shù)據處理、文字表達10論文(設計、創(chuàng)作)質量和創(chuàng)新意識55合計100得分128975086指導教師簽名 2007年5月20日評閱教師評語及評分評閱教師評語該生論文文字表達較清晰,能夠準確表達系統(tǒng)的功能,已達到本科畢業(yè)論文的要求,所開發(fā)的項目功能較完善。評分項目分值評閱畢業(yè)論文(設計、創(chuàng)作)評分撰寫開題報告、文獻綜述15調查研究查閱整理資料10學習態(tài)度與規(guī)范要求10數(shù)據處理、文字表達10論文(設計、創(chuàng)作)質量和創(chuàng)新意識55合計100得分11 9 9 8 50 87評閱教師簽名 2007年5月21日此表由教師填寫河南大學2007屆畢業(yè)論文(設計、創(chuàng)作)綜合成績表(二)學號03023236姓名王培所在學院計算機與信息工程學院答辯委員會評語及評分答辯委員會評語該生在答辯過程中,表述清晰,語言簡練,回答問題較準確,專業(yè)術語用詞較準確,具有一定的專業(yè)功底,達到了本科畢業(yè)生的水平。 答辯委員簽字: 2007年5月26日評分 項目 分值論文答辯小組評分答辯情況論文質量合計(100)內容表達情況(15)答辯問題情況(25)規(guī)范要求與文字表達(20)論文(設計、創(chuàng)作)質量和創(chuàng)新意識(40)得分 1223 173587答辯委員會主任簽字: 2007年5月26日畢業(yè)論文(設計、創(chuàng)作)成績綜合評定: 87 分綜合評定等級: 良備注:一、論文的質量評定,應包括對論文的語言表達、結構層次、邏輯性理論分析、設計計算、分析和概括能力及在論文中是否有新的見解或創(chuàng)新性成果等做出評價。從論文來看學生掌握本專業(yè)基礎理論和基本技能的程度。二、成績評定采用結構評分法,即由指導教師、評閱教師和答辯委員會分別給分(以百分計),評閱教師得分乘以20%加上指導教師得分乘以20%加上答辯委員會得分乘以60%即綜合成績。評估等級按優(yōu)、良、中、差劃分,優(yōu)90-100分;良76-89分;中60-75分;差60分以下。三、評分由專業(yè)教研室或院組織專門評分小組(不少于5人),根據指導教師和答辯委員會意見決定每個學生的分數(shù),在有爭議時,應由答辯委員會進行表決。四、畢業(yè)論文答辯工作結束后,各院應于6月20日前向教務處推薦優(yōu)秀論文以匯編成冊,推薦的篇數(shù)為按當年學院畢業(yè)生人數(shù)的1.5%篇。五、各院亦可根據本專業(yè)的不同情況,制定相應的具有自己特色的內容。須報教務處備案。六、書寫格式要求:1、目錄;2、內容提要須書寫200左右漢字,開題報告(文科除外)的內容要根據不同專業(yè)的課題任務要求,闡述查閱文獻、文案論證、解題思路、工作步驟等;3、正文(含引言、結論等);4、參考文獻(或資料)河南大學本科生畢業(yè)論文(設計、創(chuàng)作)承諾書論文題目基于struts的學校家長聯(lián)系系統(tǒng)姓 名王培所學專業(yè)計算機科學與技術學 號03023236完成時間2007年5 月20日指導教師姓名職稱陳志國(教授)、周星(助教)承諾內容:1、本畢業(yè)論文(設計、創(chuàng)作)是學生 王培 在導師 陳志國 、 周星 的指導下獨立完成的,沒有抄襲、剽竊他人成果,沒有請人代做,若在畢業(yè)論文(設計、創(chuàng)作)的各種檢查、評比中被發(fā)現(xiàn)有以上行為,愿按學校有關規(guī)定接受處理,并承擔相應的法律責任。2、學校有權保留并向上級有關部門送交本畢業(yè)論文(設計、創(chuàng)作)的復印件和磁盤。備注:學生簽名: 指導教師簽名: 2007年5月20日 2007年5月20日說明:學生畢業(yè)論文(設計、創(chuàng)作)如有保密等要求,請在備注中明確,承諾內容第2條即以備注為準。目 錄摘 要iabstractii第1章 緒論11.1 管理信息系統(tǒng)簡介11.2 開發(fā)背景及意義11.3 開發(fā)工具簡介21.4 開發(fā)框架及應用技術介紹21.4.1 開發(fā)框架21.4.2 開發(fā)中所用技術31.4.3 mvc設計模式3第2章 系統(tǒng)需求分析52.1 編寫目的52.2 項目背景及開發(fā)目標52.3 系統(tǒng)簡介52.4 系統(tǒng)功能分析62.5 數(shù)據庫需求分析6第3章 系統(tǒng)設計83.1 概要設計83.2 數(shù)據庫設計93.2.1 數(shù)據庫概念設計93.2.2 數(shù)據庫邏輯設計103.3 系統(tǒng)詳細設計123.3.1 符號代碼設計123.3.2 數(shù)據結構設計123.3.3 算法設計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結 論24參考文獻25河南大學本科畢業(yè)生學士學位論文摘 要隨著計算機技術的飛速發(fā)展,各種傳統(tǒng)的信息管理方式正不斷被依助于計算機進行信息管理的現(xiàn)代管理方式所取代,而學校和家長之間的聯(lián)系實際上也是一種信息管理,但由于各種原因,它依舊采用傳統(tǒng)的方式,沒有走向信息化。學校家長聯(lián)系系統(tǒng)的開發(fā)可以解決傳統(tǒng)方式帶來的耗時、滯后、耗財、耗人力等問題,方便家長與學校之間進行聯(lián)系,提高學校對學生信息的管理效率,減輕教師的工作量。本論文通過對系統(tǒng)的需求分析、概要設計、數(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為主要技術。關鍵詞 管理信息系統(tǒng),面向對象技術,mvc三層設計模式,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)形式多種多樣,但其基本目的、功能和設計原則都是相通的。1.1 管理信息系統(tǒng)簡介管理信息系統(tǒng)的主要功能包括:1.數(shù)據處理:包括數(shù)據收集和輸入、數(shù)據傳輸、數(shù)據存儲、數(shù)據加工處理和輸出。它準備和提供統(tǒng)一格式的信息,使各種統(tǒng)計工作簡化,使信息成本最低。2.預測功能:運用現(xiàn)代數(shù)學方法、統(tǒng)計方法或模擬方法,根據過去的數(shù)據預測未來的情況。3.計劃功能:根據企業(yè)提供的約束條件,合理地安排各職能部門的計劃,按照不同的管理層,提供相應的計劃報告。1.2 開發(fā)背景及意義目前,對我國中小學校而言,學校和家長之間聯(lián)系不密切,甚至于聯(lián)系脫節(jié)。學校和家長之間的聯(lián)系有的還停留在家長去學校開家長會,學校派教師到學生家中進行家訪的階段,這樣的方式已經不能適應時代的發(fā)展,因為它浪費了許多人力和物力,在信息時代這種傳統(tǒng)的管理方法必然被以計算機為基礎的信息管理所取代。開發(fā)這套學校家長聯(lián)系系統(tǒng)用于家長了解學生在學校期間的學習情況,家長可以查詢孩子的學習成績(期末和平時單元測驗)、到校和放學的時間、學校要求家長配合的有關事項(公告);同時學校也可以使用本系統(tǒng)發(fā)布信息,查看家長對學校工作的反饋意見,并在一定程度上減輕了學校管理部門的工作(如學生成績排名、成績分析等)。1.3 開發(fā)工具簡介選擇一套合適的開發(fā)工具是順利完成項目開發(fā)的重要條件,在本系統(tǒng)的開發(fā)中,所用到的工具軟件是eclipse java 編輯器、photoshop 圖形處理軟件、sql lserver 2000 數(shù)據庫以及java語言。其中,eclipse是一個開放源代碼的、基于java的整合型可擴展開發(fā)平臺,也是目前最著名的開源項目之一。就其本身而言,它只是一個框架和一組服務,用于通過插件組件構建開發(fā)環(huán)境。eclipse附帶了一個標準的插件集,包括java開發(fā)工具(java development tools,jdt)。其未來的目標不僅僅是成為專門開發(fā)java程序的ide環(huán)境,而是根據eclipse的體系結構,通過開發(fā)插件,它能擴展到任何語言的開發(fā),甚至能成為圖片繪制的工具。eclipse是一個開放源代碼的軟件開發(fā)項目,專注于為高度集成的工具開發(fā)提供一個全功能的、具有商業(yè)品質的工業(yè)平臺。它主要由eclipse項目、eclipse工具項目和eclipse技術項目三個項目組成,具體包括四個部分組成-eclipse platform、jdt、cdt和pde。jdt支持java開發(fā)、cdt支持c開發(fā)、pde用來支持插件開發(fā),eclipse platform則是一個開放的可擴展ide,提供了一個通用的開發(fā)平臺,它提供建造塊和構造并運行集成軟件開發(fā)工具的基礎。1.4 開發(fā)框架及應用技術介紹目前,各種軟件公司林立,軟件公司之間的競爭日趨激烈,要想在這樣的市場上占有一席之地,就必須提高自己軟件開發(fā)的速度,降低開發(fā)周期,提高軟件產品的可靠性。此時,好的技術、框架的選用就顯得特別重要了。1.4.1 開發(fā)框架本系統(tǒng)在開發(fā)過程中采用了struts開發(fā)框架。所謂struts開發(fā)框架,是由一系列規(guī)則定義的一個程序開發(fā)模板,可應用于web應用程序的開發(fā)。在web應用中恰到好處的使用struts,可節(jié)省從頭開始設計框架的時間,使得開發(fā)人員可以把精力集中在如何解決實際業(yè)務問題上。1.4.2 開發(fā)中所用技術java web應用的核心技術是java server page 和servlet。此外,開發(fā)一個完整的java web應用還涉及以下概念及技術:1.javabeans 組件2.ejb組件3.xml4.web服務器和應用服務器1.4.3 mvc設計模式mvc英文即model-view-controller,即把一個應用的輸入、處理、輸出流程按照model、view、controller的方式進行分離,這樣一個應用被分成三個層模型層、視圖層、控制層。視圖(view)代表用戶交互界面,對于web應用來說,可以概括為html界面,但有可能為xhtml、xml和applet。業(yè)務流程的處理交予模型(model)處理。模型(model):就是業(yè)務流程/狀態(tài)的處理以及業(yè)務規(guī)則的制定。業(yè)務流程的處理過程對其它層來說是黑箱操作,模型接受視圖請求的數(shù)據,并返回最終的處理結果。業(yè)務模型的設計可以說是mvc最主要的核心。目前流行的ejb模型就是一個典型的應用例子,它從應用技術實現(xiàn)的角度對模型做了進一步的劃分,以便充分利用現(xiàn)有的組件,但它不能作為應用設計模型的框架。它僅僅告訴你按這種模型設計就可以利用某些技術組件,從而減少了技術上的困難。對一個開發(fā)者來說,就可以專注于業(yè)務模型的設計。mvc設計模式告訴我們,把應用的模型按一定的規(guī)則抽取出來,抽取的層次很重要,這也是判斷開發(fā)人員是否優(yōu)秀的設計依據。抽象與具體不能隔得太遠,也不能太近。mvc并沒有提供模型的設計方法,而只告訴你應該組織管理這些模型,以便于模型的重構和提高重用性??捎脤ο缶幊虂碜霰扔?,mvc定義了一個頂級類,告訴它的子類你只能做這些,但沒法限制你能做這些。這點對編程開發(fā)人員非常重要??刂?controller)可以理解為從用戶接收請求,將模型與視圖匹配在一起,共同完成用戶的請求。劃分控制層的作用也很明顯,它清楚地告訴你,它就是一個分發(fā)器,選擇什么樣的模型,選擇什么樣的視圖,可以完成什么樣的用戶請求??刂茖硬⒉蛔鋈魏蔚臄?shù)據處理。例如,用戶點擊一個連接,控制層接受請求后, 并不處理業(yè)務信息,它只把用戶的信息傳遞給模型,告訴模型做什么,選擇符合要求的視圖返回給用戶。因此,一個模型可能對應多個視圖,一個視圖可能對應多個模型。第2章 系統(tǒng)需求分析需求分析從狹義上講,最直接的是用戶對目標系統(tǒng)的需求,即用戶在信息管理中對應用系統(tǒng)所產生的各種各樣的和可能的需要,這種需要是對應用系統(tǒng)開發(fā)的定位和最基本的立足點,這種定位不應該局限于目前的需要,還應該有一個長遠需求的預測,以盡可能提高系統(tǒng)應用的生命周期。2.1 編寫目的在對學校家長聯(lián)系系統(tǒng)軟件市場做了前期調查,同時與多位軟件使用者進行全面深入地探討和分析之后,完成了系統(tǒng)需求分析。在需求分析中對學校家長聯(lián)系系統(tǒng)軟件做了全面細致的分析,明確所要開發(fā)的軟件應具有的功能、性能與界面,使系統(tǒng)分析人員及軟件開發(fā)人員能清楚地了解用戶的需求,并在此基礎上進一步提出概要設計說明書和完成后續(xù)設計與開發(fā)工作。該分析的預期讀者為客戶、業(yè)務或需求分析人員、測試人員、用戶文檔編寫者、項目管理人員。2.2 項目背景及開發(fā)目標a)背景:受櫻開中學委托,開發(fā)櫻開學校家長聯(lián)系系統(tǒng)。b)目標:開發(fā)一套性能穩(wěn)定,界面友好的學校家長聯(lián)系系統(tǒng)。2.3 系統(tǒng)簡介本系統(tǒng)用于家長進行學生在學校的學習情況、學習成績(期末和平時單元測驗)、到校和放學的時間查詢以及學校要求家長配合的有關事項(公告)的查詢;同時學校也可以用本系統(tǒng)了解學生在校的活動和表現(xiàn),以及家長對學校工作的意見、建議,以減輕學校管理部門的工作(如學生成績排名,成績分析等)。2.4 系統(tǒng)功能分析本系統(tǒng)有三種不同角色的用戶。這三個角色分別是:家長、班主任以及系統(tǒng)管理員。他們的角色、權限不同,因而所要執(zhí)行的操作也有很大差別。家長用戶權限最低。他僅能訪問自己孩子的信息、學校公告,并可以對學校工作提出意見等。由此確定其對應的操作:學生成績、在校時間查詢,學校新聞瀏覽,發(fā)表意見等。而對于教師來說,他可以執(zhí)行的功能操作有:學生信息的錄入、修改、刪除等操作(包括姓名、家長號、離、到校時間等);成績信息的錄入、修改、刪除等操作(包括成績、時段、科目等);查看花名冊、查看班級成績列表等。系統(tǒng)管理員所要執(zhí)行的功能操作有:公告信息管理、用戶信息管理兩大部分。其中公告信息管理又包括:學校公告管理,公告信息的刪除、更新、修改(包括公告日期、內容、主題等),家長意見管理,家長意見的刪除、查看等。用戶管理是指管理員有權對比其權限低的用戶進行操作。管理員用戶可以指定、刪除班主任用戶,可以分配、刪除其他管理員用戶等。在此基礎上,有三個大的功能模塊。它們分別為不同的用戶服務,共同構成整個系統(tǒng)的功能框架。2.5 數(shù)據庫需求分析數(shù)據庫需求需要從三個方面進行分析,分別為信息需求,信息處理要求,設計需要遵循的準則。首先是信息需求。它是指用戶需要從數(shù)據庫中獲得信息的內容與性質,由信息要求可以導出數(shù)據要求,即在數(shù)據庫中需要存儲哪些數(shù)據。本系統(tǒng)中有三類基本用戶:家長、教師、管理員。家長從數(shù)據庫中獲得子女的在校信息,包括在校時間,成績查詢,學校公告(這些信息家長僅僅有查詢的權限,而不能修改、刪除、更新)以及其他家長發(fā)表的建議、評論等。教師需要從數(shù)據庫中提取班級學生信息,班級成績信息,可以錄入、修改、刪除、更新學生信息和班級成績等。管理員需要從數(shù)據庫中獲取學校公告信息,家長意見,用戶信息等。其次是處理要求。家長用戶所要完成的處理:學生在校信息查詢,學生成績查詢,學校公告信息查詢,發(fā)表意見等。班主任用戶所要完成的處理:學生信息錄入、修改、更新、刪除、查詢等;學生成績信息的錄入、修改、更新、刪除、查詢等。系統(tǒng)管理員所要完成的操作:學校公告信息的更新、刪除、插入、查詢等;家長信息的刪除、查詢等。班主任、管理員用戶的分配、刪除、信息修改等。最后在進行表設計時要注意主鍵的安排,表之間的聯(lián)系,實體范圍的確定等,以免造成數(shù)據庫的大量冗余,從而保證了實體完整性和參照完整性。第3章 系統(tǒng)設計系統(tǒng)設計是在前期需求分析的基礎上提出的。它將著重對系統(tǒng)漸進的實現(xiàn)過程進行論述。這是一個重要的過程,系統(tǒng)能否實現(xiàn),系統(tǒng)軟件產品質量的好壞都與此有關,必須把握好設計的方法、流程甚至于細節(jié)。3.1 概要設計概要設計是對系統(tǒng)在最高抽象層上的設計,它不應關注于系統(tǒng)功能的實現(xiàn)細節(jié)。下面給出概要設計的過程和結果。首先:對系統(tǒng)進行模塊劃分,設計每個模塊涉及的信息處理。教師功能模塊:a)學生資料的輸入。包括學號、姓名、性別、到校時間、離校時間、家庭編號等。b)成績錄入。包括課程號、成績、成績所屬時段等。c)課程設置。包括課程號、課程名等。d)家長信息錄入。包括賬戶名、密碼、姓名、性別、家庭住址、聯(lián)系電話等。該信息錄入是通過家長用戶注冊的方式實現(xiàn)的。家長功能模塊:a)學生信息查詢。包括孩子到校時間查詢、離校時間查詢等。b)意見管理。包括查看意見薄、留言等。系統(tǒng)管理功能模塊:a)用戶管理。包括分配班主任用戶、分配系統(tǒng)管理員用戶、刪除班主任用戶、刪除系統(tǒng)管理員用戶等。注:班主任用戶和系統(tǒng)管理員用戶是不能自行隨意注冊的,他們是具有一定權限的用戶,須由現(xiàn)有管理員給予分配。b)信息管理。包括學校公告信息管理、家長意見管理。學校公告信息管理包括公告信息的刪除、增加、更新、修改等,管理員需要實時的發(fā)布學校公告信息。而家長意見管理功能又包括了瀏覽家長意見板、刪除家長留言等。其次,給出概要設計的結果,如圖3-1所示。圖3-1 系統(tǒng)模塊圖3.2 數(shù)據庫設計數(shù)據庫設計是對系統(tǒng)所需要的一系列數(shù)據在經過分析之后,進行實體歸納、設計。其目的在于在數(shù)據庫操作時能盡可能的減少冗余,提高數(shù)據完整性。3.2.1 數(shù)據庫概念設計數(shù)據庫概念設計用e-r圖來描述。下圖3-2給出了本系統(tǒng)中部分e-r圖。圖3-2 部分e-r圖實體關系圖描述了數(shù)據庫中各種實體的相互關系。從圖中可以確定家長、學生之間,學生、班主任之間,留言、家長之間存在的關系。這里只畫出了部分的實體關系模型。正是依賴于這些關系,才能夠把不同的表信息連接起來,在操作中保證實體的完整性,可以進行多表間的級聯(lián)操作等。3.2.2 數(shù)據庫邏輯設計上文中提到的多個模塊在實現(xiàn)過程中都與數(shù)據庫有著密切的聯(lián)系,因此數(shù)據庫的設計在本系統(tǒng)的開發(fā)過程中占有重要地位。以下是本系統(tǒng)中用到的部分表。學生信息表如表3-1所示。表3-1 stuinfo表 字段名字段類型字段長度是否主鍵意義stuidnvchar10是唯一標識學生stunamenvchar16否姓名cometimedatetime8否到校時間gotimedatetime8否離校時間homeidnvchar15否家庭號teacheridnvchar15否教師號對于表3-1:其中stuid為主鍵,用來唯一的標識一名學生。而homeid是家庭編號,它用來把每個學生和其家長對應起來。家長可用此號訪問到自己孩子的信息。teacherid是班主任的編號,用于聯(lián)系學生表,從而可以對班級學生信息進行查詢、修改、刪除等操作。用戶信息表如表3-2所示。表3-2 userinfo表字段名字段類型字段長度是否主鍵意義usertypenvchar10否表示用戶類別useridnvchar20是唯一標識用戶passwordnvchar20否密碼usernamenvchar20否用戶名usersexchar2否用戶性別對于表3-2:userid用來唯一標識一名用戶,usertype用來區(qū)分不同用戶,如01表示管理員,02表示班主任用戶,03表示家長用戶。對于后兩種用戶,userid即是連接兩表的homeid或teacherid。留言信息表如表3-3所示。表3-3 messageinfo表字段名字段類型字段長度是否主鍵意義messageidint4key標識一條留言messagetypenvchar5否公告類別useridnvchar20否留言人titlenvchar50否 標題contentnvchar500否內容datenvchardatetime否日期對于表3-3:messageid是主鍵,自動增量,用于唯一的標識一條信息(學校公告或家長意見)。messagetype區(qū)分學校公告和家長意見,如01表示公告,02表示意見。userid記錄誰發(fā)表了留言。此屬性可用于連接表3-2和表3-3。由圖3-2的e-r圖導出的部分數(shù)據庫表關系圖如圖3-3所示。圖3-3 數(shù)據庫部分表關系 3.3 系統(tǒng)詳細設計詳細設計是對概要設計確定的軟件和數(shù)據的總體框架的進一步精化,精化成軟件的算法和數(shù)據結構等。3.3.1 符號代碼設計代碼是代表事物的名稱、屬性、狀態(tài)等的符號,為了便于計算機處理,一般用數(shù)字、字母或它們的組合來表示。它為事物提供一個概要而不模糊的認定,便于數(shù)據的存儲和檢索。使用代碼可以提高處理效率和精度,及數(shù)據的全局一致性。代碼的編碼方法有:順序碼、區(qū)間碼、助記碼。系統(tǒng)中用到的有:順序碼:01 管理員、02 班主任、03 家長。助記碼:userexists代表用戶名存在,stuinfoinsert代表學生信息錄入等。3.3.2 數(shù)據結構設計在此以班主任模塊為例進行說明。為了方便班主任查看班級學生信息和學生成績,分別使用了二維數(shù)組來存儲這些信息。studentinfoxy中存放班級學生信息。其中x為班級人數(shù),y為每個學生對應的屬性個數(shù)。3.3.3 算法設計為了控制程序的流向,避免大量的重復性操作,對程序進行一些算法設計。下面給出對用戶登錄中的轉向和取數(shù)據庫表的信息的方法的算法設計,設計語言選用pdl。1.在用戶登錄時,不同用戶需要登錄到不同的工作頁面中。為此做以下設計。case 用戶類別when 管理員 select 服務器端驗證,如果通過則把此用戶的登錄標志性信息放在其session對象中,用于系統(tǒng)安全性控制。具體實現(xiàn)方法將在4.3節(jié)給出。然后轉向管理員工作頁面。when 班主任 select 除做上述操作之外,還把學生信息從數(shù)據庫中取出,以備班主任查詢,其目的在于提高用戶訪問站點的速度。然后轉向班主任工作頁面。when 家長 select 操作實現(xiàn)類似班主任。然后轉向家長工作頁面。default:登錄失敗。endcase2.取數(shù)據庫表信息。do while 數(shù)據庫表中還有符合條件的信息 將表中信息封裝成相應的javabeans,以備用戶訪問。endwhile此算法設計為取各種表中信息,取數(shù)據時不區(qū)分表的類別,待取出信息后再封裝成不同的javabeans,比如messagebean等,以此避免重寫大量的取表信息的代碼。第4章 系統(tǒng)實現(xiàn)系統(tǒng)實現(xiàn)側重于系統(tǒng)功能的代碼實現(xiàn)。在本系統(tǒng)實現(xiàn)的過程中充分應用了struts框架下的mvc設計思想。在java語言基礎上的web應用開發(fā)因為tomcat 這一application server 的應用,而省去了大量的關于用戶session管理的手動實現(xiàn)。4.1 系統(tǒng)中對象的創(chuàng)建本系統(tǒng)的開發(fā)中,依照struts框架的mvc設計思想,對系統(tǒng)中用到的對象做以下部署:繼承自actionservlet類的類用來進行邏輯控制,即mvc中的controller。例如系統(tǒng)中的view.do,用于進行用戶登錄時的轉向控制,不同的用戶將轉向不同的操作界面。jsp用來進行客戶端顯示,即mvc中的view。而javabeans用來實現(xiàn)信息的模塊封裝。程序通過瀏覽器區(qū)分客戶,對于每個客戶,application server都將自動創(chuàng)建一個session對象,一個用戶所需全局信息可置于其中(它其實是一個容器對象)用戶瀏覽器請求通過自動創(chuàng)建的request傳送,而所有關乎數(shù)據庫的操作都封裝在sqlexcute類中(自建類)。而各種經過處理的信息都放在各種javabeans對象中,例如:學生信息放在studentbean中。所謂javabeans是有getxxx(),setxxx()組成的java類,事實上是一種規(guī)則,以利于信息的訪問。4.2 系統(tǒng)功能模塊實現(xiàn)在系統(tǒng)設計的基礎上,依照設計的成果,選用具體的開發(fā)語言、環(huán)境,進行系統(tǒng)功能的代碼實現(xiàn)。4.2.1 首頁訪問的實現(xiàn)用戶在訪問站點時,沒有直接發(fā)送jsp頁面請求,而是將請求發(fā)給了seveletaction,并由它來重定向頁面請求。這樣做的好處在于可以把java實現(xiàn)的數(shù)據操作放在jb中,有seveletaction將jsp轉向和數(shù)據操作結合起來。因為在jsp中直接引用java代碼進行數(shù)據操作是不可取的。此時用戶請求的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ù)據處理,只是把用戶的請求和模型結合起來。數(shù)據庫訪問的操作都放在自定義的sqlexcute類中,以靜態(tài)方法的形式存在。而messagebean即是所謂的ejb,它是一種遵循了某些規(guī)則的java類。從數(shù)據庫中取出的公告信息被封裝成messagebean的對象之后放入servletcontext中,以備請求頁面的用戶預覽。controller獲取這些信息,并定向到用戶請求的頁面。正是ejb所遵循的規(guī)則,使這些以bean存放的信息可以在頁面以簡便的el語句輸出,如下代碼所示。 其中c:foreach是jsp的taglib,用于重用java代碼。效果如圖4-1所示。圖4-1 首頁界面4.2.2 用戶登錄模塊功能實現(xiàn)用戶登錄時需要向服務器提交登錄信息,而以什么形式提交這些信息才能最大限度的實現(xiàn)代碼的可重用性,struts也考慮到了這些。此時struts的taglib(標簽)發(fā)揮了它完美的作用。標簽定義一個用戶提交信息的表單,是它最初確定了要把表單提交到何處進行處理。而要完全實現(xiàn)對整個系統(tǒng)導航,必須用到struts-config.xml,它是一個配置文件,真正把用戶提交的表單封裝成一個formbean的類。這樣只需把該類和要提交到的servletaction在此配置文件中做一個映射即可。不必重寫formbean,只需通過多次映射便可多次使用該表單信息。下面代碼片斷為本系統(tǒng)中的一個映射。 此映射將loginform表單提交給login這樣一個servletaction類。表單信息以動態(tài)formbean的形式提交給login后,login調用sqlexcute數(shù)據庫的操作方法,判斷用戶類別,用戶是否存在(不存在就定向到注冊頁面),密碼是否正確等。(這里值得一提的是所有不牽涉數(shù)據庫操作的客戶端驗證均利用在jsp頁面進行驗證,如輸入長度,格式等。)待這些服務器端驗證成功時,再把對于一個用戶來說全程訪問的數(shù)據信息通過sqlexcute類提取出來,封裝成相應的javabeans減少數(shù)據庫連接次數(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ù)據庫中取出的孩子信息封裝成studentbean對象,放入用戶session對象,最后跳轉到家長工作的頁面。這是從用戶登錄中截取的一段代碼。在用戶登錄中要進行用戶角色劃分,以便不同用戶進入不同的工作模塊。這里是通過usertype這一屬性區(qū)分不同用戶。01表示管理員、02表示班主任、03表示家長。4.2.3 家長用戶模塊功能實現(xiàn)家長用戶主要執(zhí)行查詢、留言等操作。1.孩子在校信息、成績查詢在登錄之初,已經在view.do中把這些信息封裝到相應的javabeans中,放入session對象中,此時可以直接在頁面用el語句輸出即可。2.家長留言用于完成留言信息輸入。提交時,以動態(tài)frombean方式提交給相應的繼承自action類的類。在此類中判斷用戶是否登錄。如登錄則將留言信息以家長用戶類型插入到數(shù)據庫留言表中,同時將操作提示返回給用戶。3.刪除留言用戶選擇刪除留言操作后,頁面將此信息提交給相應的action去處理,action調用數(shù)據庫操作的類執(zhí)行刪除操作,并將操作結果的信息返回給頁面。4.2.4 班主任用戶模塊功能實現(xiàn)1.學生信息錄入班主任選擇學生信息錄入的操作,進入信息錄入界面。根據界面提示輸入學生信息,以動態(tài)formbean的形式提交給相應的action類。此類調用數(shù)據庫操作類,判斷學生是否存在。如果不存在,則調用數(shù)據庫操作類將學生信息插入學生信息表。操作后要返回操作結果信息給班主任頁面。動態(tài)formbean是在struts-c
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 礦山資源勘查與評價方法考核試卷
- 硅冶煉與深海資源開發(fā)考核試卷
- 絕緣制品在海洋工程設備中的應用考核試卷
- 電氣設備在智能電網實時監(jiān)控系統(tǒng)中的應用考核試卷
- 水產品冷凍加工中的食品安全監(jiān)管考核試卷
- 社會看護服務中的非言語溝通技巧考核試卷
- 有線電視傳輸網絡文化產品與內容創(chuàng)新考核試卷
- 稅務合規(guī)與風險防范培訓考核試卷
- 禮儀情境模擬對話課件
- 生態(tài)農業(yè)建設生物技術實踐考核試卷
- 抖音房產直播敏感詞匯表
- (高清版)JTGT 3383-01-2020 公路通信及電力管道設計規(guī)范
- 國際公法學馬工程全套教學課件
- 微專題地質地貌的形成過程(解析)
- YY/T 0655-2024干式化學分析儀
- 中華民族共同體概論課件專家版2第二講 樹立正確的中華民族歷史觀
- 四年級四年級下冊閱讀理解100篇及答案經典
- 中職對口升學復習資料:《汽車機械基礎》試題庫+答案
- 部編版語文五年級下冊第六單元整體教學設計教案
- 平面變壓器設計與仿真
- 合作取得更大的成功辯論稿范文六篇
評論
0/150
提交評論