學(xué)生學(xué)籍管理系統(tǒng)設(shè)計(jì)報(bào)告_第1頁(yè)
學(xué)生學(xué)籍管理系統(tǒng)設(shè)計(jì)報(bào)告_第2頁(yè)
學(xué)生學(xué)籍管理系統(tǒng)設(shè)計(jì)報(bào)告_第3頁(yè)
學(xué)生學(xué)籍管理系統(tǒng)設(shè)計(jì)報(bào)告_第4頁(yè)
學(xué)生學(xué)籍管理系統(tǒng)設(shè)計(jì)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩15頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、學(xué)生學(xué)籍管理系統(tǒng)設(shè)計(jì)報(bào)告作者:您的大名指導(dǎo)老師:您的老師時(shí)間:二零一零八月十二學(xué)生學(xué)籍管理系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)1.1 概述學(xué)籍管理是學(xué)校教務(wù)的一項(xiàng)主要工作,它反映了一個(gè)學(xué)校的生源情況和學(xué)生 的在校表現(xiàn),每一個(gè)檔案都記錄了一個(gè)學(xué)生在每個(gè)學(xué)校的一段歷史,必須真實(shí)可信,所以檔案管理工作是一項(xiàng)嚴(yán)肅、認(rèn)真而又繁瑣的工作。而Internet的發(fā)展使得基于web的應(yīng)用十分普及和成熟。因此,本系統(tǒng)在 在分析學(xué)籍管理需求和可行性后,基于B/S模式進(jìn)行開(kāi)發(fā),考慮到擴(kuò)展和技術(shù)難 點(diǎn),本人將基于J2ee進(jìn)行開(kāi)發(fā)。該系統(tǒng)適合各類(lèi)中、小學(xué)校、職業(yè)技術(shù)學(xué)校的學(xué)生學(xué)籍管理,提供學(xué)生學(xué)籍 信息、成績(jī)信息的新增、修改、刪除、查詢統(tǒng)計(jì)等

2、功能,并具有良好擴(kuò)展能力。1.2 系統(tǒng)分析1.2.1 需求分析學(xué)籍管理指學(xué)校對(duì)學(xué)生所獲得的學(xué)籍資料進(jìn)行管理。 凡經(jīng)過(guò)升學(xué)考試或按規(guī) 定手續(xù)被正式錄取的學(xué)生,入校辦理注冊(cè)手續(xù)后即取得該校學(xué)籍, 它標(biāo)志著學(xué)生 取得了參加學(xué)習(xí)的資格。學(xué)籍是組織管理學(xué)生的客觀依據(jù)。傳統(tǒng)的學(xué)籍管理模式和管理手段不僅大量地消耗人力、 物力,同時(shí),還存在 諸多弊端,效率低、保密性差,不利于查找、更新和維護(hù)的問(wèn)題,影響教學(xué)秩序, 阻礙教學(xué)改革的深化,難以保證該項(xiàng)工作應(yīng)具有的嚴(yán)肅性。同時(shí),隨著科學(xué)技術(shù)、管理方法的不斷進(jìn)步,傳統(tǒng)的辦公方式、方法和手段 已經(jīng)不能適應(yīng)現(xiàn)代化管理的需要,作為培養(yǎng)高質(zhì)量合格人才為宗旨的高等學(xué)校, 總是走

3、在科技的最前沿,學(xué)籍管理的計(jì)算機(jī)化已成為高校管理現(xiàn)代化、決策科學(xué) 化的一個(gè)重要環(huán)節(jié),是開(kāi)創(chuàng)學(xué)籍管理工作新局面的必由之路。因此,開(kāi)發(fā)一個(gè)功能完善、操作簡(jiǎn)單、界面友好、有針對(duì)性的學(xué)籍管理系統(tǒng) 對(duì)學(xué)校、乃至社會(huì)都是非常必要,非常有意義的。1.2.2 可行性分析在當(dāng)今的信息化時(shí)代,學(xué)校具備一定規(guī)模的網(wǎng)絡(luò)環(huán)境,已基本擁有自己的 Intranet并和Internet相集成;基于web的學(xué)生學(xué)籍管理系統(tǒng)后臺(tái)需要一臺(tái)服 務(wù)器,前端用戶只需要一個(gè)瀏覽器就可以和服務(wù)器交互,管理學(xué)生學(xué)籍信息?;?于以上分析:基于web的學(xué)生學(xué)籍管理系統(tǒng)開(kāi)發(fā)是可行的。1.2.3 技術(shù)架構(gòu)本系統(tǒng)實(shí)現(xiàn)了采用B / S 模式、基于J2EE

4、平臺(tái)、采用J S P + M ySql5.0+Tomcat6.0技術(shù)方案的在線考試系統(tǒng)整體架構(gòu)如下:r Web ServerClient HrzBrowserr Request,Response-其中:Client: 瀏覽器IE6以上或FireFox3.6 以上HTML,JavaScript,DomWeb Server: Tomcat6.0Database: MySql5.01.3 概要設(shè)計(jì)1.3.1 系統(tǒng)規(guī)劃提供三個(gè)角色:學(xué)生、老師、管理員。學(xué)生登錄后:查看自己學(xué)籍信息;查看考試成績(jī)老師登錄后:對(duì)所帶課程給學(xué)生打分; 查看所有學(xué)生學(xué)籍信息; 查看自己基本信息;管理員登錄后:增刪改學(xué)生學(xué)籍信息

5、; 增刪改老師信息; 增刪改課程、班級(jí)信息;升留級(jí)管理;1.3.2 功能結(jié)構(gòu)圖學(xué)員登錄JL管理員老師q f14/ ;, U個(gè)人學(xué)籍信息察 看 考 試 成 績(jī)?cè)鰟h改學(xué)籍信息增 刪 改 老 師 信 息增 刪 改 課 程 信 息, 增 刪 改 班 級(jí) 信 息升 留 級(jí) 管 理個(gè) 人 信 息課 程 打 分查詢學(xué)生學(xué)籍信息1.4 詳細(xì)設(shè)計(jì)1.4.1 設(shè)計(jì)目標(biāo)此系統(tǒng)的目標(biāo)就是滿足中小型學(xué)?;?b/s模式學(xué)生學(xué)籍管理系統(tǒng)需求。它 應(yīng)該突破傳統(tǒng)學(xué)籍管理方式的時(shí)空限制, 充分利用計(jì)算機(jī)進(jìn)行學(xué)籍、學(xué)習(xí)成績(jī)管 理、課程打分、升留級(jí)管理等功能,可以減輕管理人員和教師手工操作的工作量。管理員可以通過(guò) W e b瀏覽器

6、遠(yuǎn)程管理學(xué)生學(xué)籍、老師信息、課程信息等; 教師可以通過(guò) Web瀏覽器遠(yuǎn)程查看學(xué)生學(xué)籍信息、對(duì)課程進(jìn)行打分;學(xué)生可 以在線查看考試成績(jī)和學(xué)籍信息。系統(tǒng)基于We b頁(yè)面,操作簡(jiǎn)單、數(shù)據(jù)安全性高;系統(tǒng)要具有良好的可靠性、 高效性、完整性、易使用性、可維護(hù)性、可擴(kuò)展性。1.4.2 運(yùn)行環(huán)境硬件平臺(tái):CPU : 1.5GHz 以上內(nèi)存:256Mb以上;軟件平臺(tái):服務(wù)器:操作系統(tǒng):Microsoft NT 系列 windows XP/2000/98Jdk1.6;Tomcat6.0;客戶端:IE6.0 以上;fireFox3.6 以上1.4.3 數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)擔(dān)當(dāng)著存儲(chǔ)業(yè)務(wù)數(shù)據(jù),提供數(shù)據(jù)查詢服務(wù)的重任;因

7、而良好的數(shù)據(jù) 庫(kù)設(shè)計(jì)對(duì)整個(gè)系統(tǒng)運(yùn)行效率和成敗起著至關(guān)重要的作用。針對(duì)學(xué)生學(xué)籍管理系統(tǒng) 的系統(tǒng)需求和學(xué)習(xí)成本,作者采用了 MYSQL5.作為數(shù)據(jù)庫(kù)服務(wù)器,并在其上設(shè) 計(jì)了一系列表,定義它們之間關(guān)聯(lián)關(guān)系,成功支持了系統(tǒng)各種功能并有良好擴(kuò)展 性。 :數(shù)據(jù)字典student學(xué)生表記錄學(xué)生基本信息,詳細(xì)信息在 stu_info,表關(guān)聯(lián)鍵為學(xué)生IDColumn Name| Oa(atypeI 吼 l 靳 I Flags| Default Value| Commentid& VARCHARE)d BINARY-j nameA VAR CHAR |45)口 BINARY sex>

8、INT(IO)«, UNSIGNED EROFILL03 age工 INT(1O)4/ UNSIGNED ZEROALLStu_info學(xué)籍信息表記錄學(xué)生學(xué)籍詳細(xì)信息Column NameDatatypeI N<T| HULLKT01 Hmj| Default ValueCommentstu idq VARCHARjfi)BINARY弋 DATEQ r>ativepldce" "ARCH而口口0) BINARYEnnclass_idfclNT(ll)d UNSIGNED 7ER0FILLQ addressq VARCHAR|100| BINARYQ p

9、hone5 VARCHAR20) 1 BINARY0class班級(jí)表記錄班級(jí)信息Column NameII DatatjipeI NCT| NULL概。J Flags| default Value| Commentida> INT(IO)/ UNSIGNED _J 7ER0ALL canQ name7 VARCHARHOJV二( BINARY* hteachef7 VARCHAR(8) BINARY班主任q monitor$ VARCHAR(G)J BINARY班長(zhǎng)Teacher老師表記錄老師信息(字段可以擴(kuò)充)Column Nane| DatatypeI NOiT| HULLIl 那

10、I Flags| DefaullValue | Cammenrtid心 VARCHAAI8)dLJ BINARYQ nameG VAR CHAR 145)yf l BINARYCourse課程表Ccluim Name:| D期即EW I AJTONU-L | IbCFlags| Default ValueCiomentidINT(IQ)d >1 UNSIGNED ZEAQFILLnmsQ rnneVARCHAR(10mJ Bl MARYQ ctescr心 VARCHAE(300J BINARYnumU teacher© VARCHAR(e) BIHARYScore分?jǐn)?shù)表記錄學(xué)生

11、某課程成績(jī)Column Name| DatatypeI NUT| NULL既 I FlagsDefaut ValueCementstu_id心 VARCHARIG)d BINARYcourse_ad愛(ài) INT(IO),UN51GMED ZEROFILL。scoreX INT(10)/. UNSIGNED ZEROFILLUser用戶表用于用戶登錄時(shí),其內(nèi)容由新建學(xué)生、老師時(shí)自動(dòng)添加Column Name| DatatypeI S8Il | I Flags| Default VskjeI Commentname3 VAR CHAR IB)yU BINARY0 passVAR CHAR IE)LJ

12、 BINARY roleINT(10)/封 UNSIGNED :J ZEROALL1一個(gè)應(yīng)用系統(tǒng)在發(fā)生業(yè)務(wù)活動(dòng)時(shí),會(huì)產(chǎn)生大量的不同類(lèi)型的業(yè)務(wù)數(shù)據(jù),對(duì)這 些數(shù)據(jù)的存儲(chǔ)、分類(lèi)和展現(xiàn)是實(shí)現(xiàn)系統(tǒng)目標(biāo)的基礎(chǔ)。上節(jié)設(shè)計(jì)了一系列數(shù)據(jù)表, 在此系統(tǒng)運(yùn)行中將產(chǎn)生的數(shù)據(jù)寫(xiě)于數(shù)據(jù)庫(kù),并根據(jù)添加查詢出來(lái)展現(xiàn)。1.4.4 系統(tǒng)流程設(shè)計(jì)1)普通學(xué)員系統(tǒng)流程2)老師系統(tǒng)流程管理課程信息查看考試成績(jī)圖-61.5 編碼設(shè)計(jì)編碼一種藝術(shù)。好的編碼首先要邏輯正確、清晰,只有這樣編碼要更成功 實(shí)現(xiàn)系統(tǒng)功能;其次要書(shū)寫(xiě)規(guī)范、流暢、注釋要寫(xiě)清楚,讓人達(dá)到賞心悅目的感 受。原因主要是:寫(xiě)過(guò)的代碼,在系統(tǒng)升級(jí)完善時(shí)可能需要修改,而修改人很有

13、 可能不是程序的編寫(xiě)者;如果邏輯不清,書(shū)寫(xiě)混亂,沒(méi)有足夠的注釋?zhuān)菍⑹且?種災(zāi)難,將大大增加系統(tǒng)維護(hù)升級(jí)的開(kāi)銷(xiāo)。1.5.1 后臺(tái)編碼設(shè)計(jì)采用模型(Model),視圖(View)和控制Controller)模型。MVC模式的目的就是 實(shí)現(xiàn)Web系統(tǒng)的職能分工。Model層實(shí)現(xiàn)系統(tǒng)中的業(yè)務(wù)邏輯,通??梢杂肑avaBean或EJB來(lái)實(shí)現(xiàn)。 View層用于與用戶的交互,通常用JSP來(lái)實(shí)現(xiàn)。Controller層是Model與View之間溝通的橋梁,它可以分派用戶的請(qǐng)求并選擇恰 當(dāng)?shù)囊晥D以用于顯示,同時(shí)它也可以解釋用戶的輸入并將它們映射為模型層可執(zhí) 行的操作。本系統(tǒng)中,控制器位于包c(diǎn)ontrollers

14、下,控制頁(yè)面流程跳轉(zhuǎn),調(diào)用 modle模型位于包modles下,模型和數(shù)據(jù)表對(duì)應(yīng)如下圖:cd-ntrollre用Ji Appli cati oTiC&iktfollr. j 雨口j 國(guó) ! CJa'ssControiler,! E,'8| j Cours eCoatroll er. j tvattl J MlgeC Qutroller. j avsi! i I_v-1+1 J ScoreContrcllw. java+ -T StuController. Java+ J_ SysCiiitrollar. JavsL ” .+ J TsJCoaitr oiler. j3酎

15、也由工 UsarC ontr oil ar . j ara臼串 except!on+- J SysEx cept i on. j ava吁,'珅 mo>dlQE® BasftAccess. java* JI BseMysgl. j ava申山 Class.E- jj Ccurses java.Ltl , J_ Ml onager. j ava1 -+- u Jj Sore. j ava0 - Jj Studrat. j wai &Stulnfo. j avaS- Jj Teacher, j ava由jj User.Java典型代碼:teacher模型,對(duì)應(yīng)數(shù)據(jù)庫(kù)

16、表teacherpackage modles;import com.et.ar.annotations.Column;import com.et.ar.annotations.GeneratorType;import com.et.ar.annotations.Id;import com.et.ar.annotations.Table;Table(name="teacher")public class Teacher extends BaseMysql Id(generate=GeneratorType.NONE) private String id;Column priv

17、ate String name;public String getName() return name;public void setName(String name) = name;public String getId() return id;)public void setId(String id) this.id = id;)teacher控制器,teacherControllerpackage controllers;public class TeaController extends ApplicationController public JspView in

18、dex() int role = Integer.parseInt(String)session.getAttribute("_role"); String rst = "tea/indexv.jsp"switch(role) case 1: rst = "error.jsp?why=auth" break;case 2: rst = "tea/indexv.jsp" break;case 3: rst = "tea/index.jsp" break;return new JspView(rst

19、);/*查詢老師信息*/public JsonView get() throws ExceptionString order = request.getParameter("order"), page = request.getParameter("page"), rows = request.getParameter("rows"), sort = request.getParameter("sort"), id = request.getParameter("id"), name = req

20、uest.getParameter("name");StringBuilder condition = new StringBuilder(); ArrayList<String> args = new ArrayList<String>(); if(id!=null && !id.equals("") condition.append(" id=?");args.add(id); else if(name!=null && !name.equals("")

21、condition.append(" name=?"); args.add(name);order = order=null?"desc":order;page = page=null?"1":page;rows = rows=null?"10":rows;sort = sort=null?"id":sort;order = sort + " " + order;int limit = Integer.parseInt(rows);int offset = (Integer.

22、parseInt(page) - 1)*limit;List<Teacher> teachers = Teacher.findAll(Teacher.class, condition.toString(), args.toArray(), order, limit, offset);Map<String,Object> rst = new HashMap<String,Object>();if(request.getParameter("t")!=null&&request.getParameter("t&quo

23、t;).equalsIgnoreCase("tree") return new JsonView(teachers); else rst.put("rows", teachers);rst.put("total", teachers.size();return new JsonView(rst);/*新增老師信息*/public JsonView add() String data = request.getParameter("data");JSONParser parser = new JSONParser()

24、;JSONArray ja;JSONObject jo = null;Teacher teacher = nul;ArrayList<String> success = new ArrayList<String>(), failure = new ArrayList<String>();Map<String,Object> rst = new HashMap<String,Object>();rst.put("code","0"); 成功String id = null;try ja = (JS

25、ONArray)parser.parse(data);for(int i=0; i<ja.size(); i+) jo = (JSONObject) ja.get(i); id = (String)jo.get("id");teacher = Teacher.createModel(Teacher.class, jo);if (teacher.save() success.add(id); tryUser user = new User();user.setName(id);user.setPass(id);user.setRole(2); user.save();c

26、atch(Exception ee) ee.printStackTrace();System.out.println("添加用戶失敗,請(qǐng)手動(dòng)添加用戶 ); else failure.add(id); catch (ParseException e) rst.put("code","1");/ 參數(shù)解析錯(cuò)誤 failure.add(id);e.printStackTrace(); catch (Exception e) e.printStackTrace(); failure.add(id);rst.put("code", &

27、quot;-1"); 服務(wù)器內(nèi)部錯(cuò)誤rst.put("sid", success);rst.put("fid", failure);return new JsonView(rst);/*更新指定的老師資料*/public JsonView update() String data = request.getParameter("data");JSONParser parser = new JSONParser();JSONArray ja = null;JSONObject jo = null;I Teacher teach

28、er = nul;ArrayList<String> success = new ArrayList<String>(),failure = new ArrayList<String>();Map<String,Object> rst = new HashMap<String,Object>(); rst.put("code", "0");String id = null; catch (ActiveRecordException e) rst.put("code", &qu

29、ot;-1");failure.add(id);e.printStackTrace(); catch (Exception e) rst.put("code", "-1");failure.add(id);e.printStackTrace();rst.put("sid", success);rst.put("fid", failure);return new JsonView(rst);刪除老師信息*/public JsonView del() String data = request.getPara

30、meter("data");JSONParser parser = new JSONParser();JSONArray ja = null;JSONObject jo = null;Teacher teacher = null;ArrayList<String> success = new ArrayList<String>(), failure = new ArrayList<String>();Map<String,Object> rst = new HashMap<String,Object>();rst.

31、put("code", "0");String id = null;try ja = (JSONArray)parser.parse(data);for(int i=0; i<ja.size(); i+) jo = (JSONObject) ja.get(i);id = (String)jo.get("id");teacher = Teacher.find(Teacher.class, id);if(teacher.destroy()>0) success.add(id);tryUser user=User.find(Us

32、er.class, id); if(user!=null)user.destroy(); catch(ActiveRecordException ee) System.out.println("用戶刪除失敗,請(qǐng)手動(dòng)處理"); else failure.add(id);I catch (ParseException e) failure.add(id);rst.put("code", "1");e.printStackTrace(); catch (ActiveRecordException e) rst.put("code&

33、quot;, "-1");failure.add(id);營(yíng) e.printStackTrace();rst.put("sid", success);rst.put("fid", failure);Ireturn new JsonView(rst);口1.5.2前端編碼設(shè)計(jì)為了簡(jiǎn)化和統(tǒng)一前端界面風(fēng)格:采用 JQueryf口基于JQuery白UI框架easyuijQuery是一個(gè)快速的,簡(jiǎn)潔的javaScript庫(kù),使用戶能更方便地處理HTML documents events、實(shí)現(xiàn)動(dòng)畫(huà)效果,并且方便地為網(wǎng)站提供 AJAX交互。easy

34、u基于JQuery可以方便的創(chuàng)建風(fēng)格統(tǒng)一的UI ,是小型系統(tǒng)快速開(kāi)發(fā)的不 錯(cuò)選擇??梢詣?chuàng)建 window,datagrid,commbox,button常見(jiàn)控件。1.6運(yùn)行測(cè)試系統(tǒng)設(shè)計(jì)完成后,最總要的一步就是系統(tǒng)運(yùn)行測(cè)試。通過(guò)對(duì)最終軟件系統(tǒng)進(jìn) 行全面的測(cè)試,可以確保最終軟件系統(tǒng)滿足產(chǎn)品需求并且遵循了既定系統(tǒng)設(shè)計(jì)。 對(duì)于在線考試系統(tǒng):作者制定了對(duì)系統(tǒng)功能的以下簡(jiǎn)單測(cè)試:1)系統(tǒng)登錄測(cè)試:1 .要求能夠?qū)崿F(xiàn)學(xué)員、老師、管理員的登錄功能;2 .在用戶名或密碼錯(cuò)誤時(shí)候有必要提示;用戶名失敗提示圖-14.5.次酬. fill tKTid助eWtZW工主,* 用審計(jì) te w*«* iFTrf.

35、T±tS i?rirs 酮.甘重F不甘厘as Al KiWiL fHCBTYI-JL加卷n. tw/”溝t登錄成功進(jìn)入主頁(yè)面圖-152)學(xué)籍信息管理測(cè)試:1 .管理員登錄后可以管理學(xué)籍信息;2 .系統(tǒng)對(duì)一些非法輸入能夠監(jiān)測(cè)并處理;工電J就國(guó)EE. stt t®9BI antsu新增000005學(xué)生信息等生E71W9? H即.雷坦 E if IW1-=鼻簾?-SW59學(xué)史手號(hào)%MU班即電廟mt在堀1Q性LOIfliHH2妗0耳T1比】知'25B4虬辦«*融tkL falitiiSOMM.wdt耳4必壯j*e朝空s3選艱Eli t k】.史.SOQftJ百q口噸喟HEJXTG&iM

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論