




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、学生学籍管理系统设计报告作者:您的大名指导老师:您的老师时间:二零一零八月十二学生学籍管理系统设计和实现1.1 概述学籍管理是学校教务的一项主要工作,它反映了一个学校的生源情况和学生 的在校表现,每一个档案都记录了一个学生在每个学校的一段历史,必须真实可信,所以档案管理工作是一项严肃、认真而又繁琐的工作。而Internet的发展使得基于web的应用十分普及和成熟。因此,本系统在 在分析学籍管理需求和可行性后,基于B/S模式进行开发,考虑到扩展和技术难 点,本人将基于J2ee进行开发。该系统适合各类中、小学校、职业技术学校的学生学籍管理,提供学生学籍 信息、成绩信息的新增、修改、删除、查询统计等
2、功能,并具有良好扩展能力。1.2 系统分析1.2.1 需求分析学籍管理指学校对学生所获得的学籍资料进行管理。 凡经过升学考试或按规 定手续被正式录取的学生,入校办理注册手续后即取得该校学籍, 它标志着学生 取得了参加学习的资格。学籍是组织管理学生的客观依据。传统的学籍管理模式和管理手段不仅大量地消耗人力、 物力,同时,还存在 诸多弊端,效率低、保密性差,不利于查找、更新和维护的问题,影响教学秩序, 阻碍教学改革的深化,难以保证该项工作应具有的严肃性。同时,随着科学技术、管理方法的不断进步,传统的办公方式、方法和手段 已经不能适应现代化管理的需要,作为培养高质量合格人才为宗旨的高等学校, 总是走
3、在科技的最前沿,学籍管理的计算机化已成为高校管理现代化、决策科学 化的一个重要环节,是开创学籍管理工作新局面的必由之路。因此,开发一个功能完善、操作简单、界面友好、有针对性的学籍管理系统 对学校、乃至社会都是非常必要,非常有意义的。1.2.2 可行性分析在当今的信息化时代,学校具备一定规模的网络环境,已基本拥有自己的 Intranet并和Internet相集成;基于web的学生学籍管理系统后台需要一台服 务器,前端用户只需要一个浏览器就可以和服务器交互,管理学生学籍信息。基 于以上分析:基于web的学生学籍管理系统开发是可行的。1.2.3 技术架构本系统实现了采用B / S 模式、基于J2EE
4、平台、采用J S P + M ySql5.0+Tomcat6.0技术方案的在线考试系统整体架构如下:r Web ServerClient HrzBrowserr Request,Response-其中:Client: 浏览器IE6以上或FireFox3.6 以上HTML,JavaScript,DomWeb Server: Tomcat6.0Database: MySql5.01.3 概要设计1.3.1 系统规划提供三个角色:学生、老师、管理员。学生登录后:查看自己学籍信息;查看考试成绩老师登录后:对所带课程给学生打分; 查看所有学生学籍信息; 查看自己基本信息;管理员登录后:增删改学生学籍信息
5、; 增删改老师信息; 增删改课程、班级信息;升留级管理;1.3.2 功能结构图学员登录JL管理员老师q f14/ ;, U个人学籍信息察 看 考 试 成 绩增删改学籍信息增 删 改 老 师 信 息增 删 改 课 程 信 息, 增 删 改 班 级 信 息升 留 级 管 理个 人 信 息课 程 打 分查询学生学籍信息1.4 详细设计1.4.1 设计目标此系统的目标就是满足中小型学校基于 b/s模式学生学籍管理系统需求。它 应该突破传统学籍管理方式的时空限制, 充分利用计算机进行学籍、学习成绩管 理、课程打分、升留级管理等功能,可以减轻管理人员和教师手工操作的工作量。管理员可以通过 W e b浏览器
6、远程管理学生学籍、老师信息、课程信息等; 教师可以通过 Web浏览器远程查看学生学籍信息、对课程进行打分;学生可 以在线查看考试成绩和学籍信息。系统基于We b页面,操作简单、数据安全性高;系统要具有良好的可靠性、 高效性、完整性、易使用性、可维护性、可扩展性。1.4.2 运行环境硬件平台:CPU : 1.5GHz 以上内存:256Mb以上;软件平台:服务器:操作系统:Microsoft NT 系列 windows XP/2000/98Jdk1.6;Tomcat6.0;客户端:IE6.0 以上;fireFox3.6 以上1.4.3 数据库设计数据库担当着存储业务数据,提供数据查询服务的重任;因
7、而良好的数据 库设计对整个系统运行效率和成败起着至关重要的作用。针对学生学籍管理系统 的系统需求和学习成本,作者采用了 MYSQL5.作为数据库服务器,并在其上设 计了一系列表,定义它们之间关联关系,成功支持了系统各种功能并有良好扩展 性。 :数据字典student学生表记录学生基本信息,详细信息在 stu_info,表关联键为学生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学籍信息表记录学生学籍详细信息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班级表记录班级信息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班长Teacher老师表记录老师信息(字段可以扩充)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分数表记录学生
11、某课程成绩Column Name| DatatypeI NUT| NULL既 I FlagsDefaut ValueCementstu_id心 VARCHARIG)d BINARYcourse_ad爱 INT(IO),UN51GMED ZEROFILL。scoreX INT(10)/. UNSIGNED ZEROFILLUser用户表用于用户登录时,其内容由新建学生、老师时自动添加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一个应用系统在发生业务活动时,会产生大量的不同类型的业务数据,对这 些数据的存储、分类和展现是实现系统目标的基础。上节设计了一系列数据表, 在此系统运行中将产生的数据写于数据库,并根据添加查询出来展现。1.4.4 系统流程设计1)普通学员系统流程2)老师系统流程管理课程信息查看考试成绩图-61.5 编码设计编码一种艺术。好的编码首先要逻辑正确、清晰,只有这样编码要更成功 实现系统功能;其次要书写规范、流畅、注释要写清楚,让人达到赏心悦目的感 受。原因主要是:写过的代码,在系统升级完善时可能需要修改,而修改人很有
13、 可能不是程序的编写者;如果逻辑不清,书写混乱,没有足够的注释,那将是一 种灾难,将大大增加系统维护升级的开销。1.5.1 后台编码设计采用模型(Model),视图(View)和控制Controller)模型。MVC模式的目的就是 实现Web系统的职能分工。Model层实现系统中的业务逻辑,通常可以用JavaBean或EJB来实现。 View层用于与用户的交互,通常用JSP来实现。Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰 当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执 行的操作。本系统中,控制器位于包controllers
14、下,控制页面流程跳转,调用 modle模型位于包modles下,模型和数据表对应如下图:cd-ntrollre用Ji Appli cati oTiC&iktfollr. j 雨口j 国 ! 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模型,对应数据库
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("添加用户失败,请手动添加用户 ); else failure.add(id); catch (ParseException e) rst.put("code","1");/ 参数解析错误 failure.add(id);e.printStackTrace(); catch (Exception e) e.printStackTrace(); failure.add(id);rst.put("code", &
27、quot;-1"); 服务器内部错误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("用户删除失败,请手动处理"); 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);营 e.printStackTrace();rst.put("sid", success);rst.put("fid", failure);Ireturn new JsonView(rst);口1.5.2前端编码设计为了简化和统一前端界面风格:采用 JQueryf口基于JQuery白UI框架easyuijQuery是一个快速的,简洁的javaScript库,使用户能更方便地处理HTML documents events、实现动画效果,并且方便地为网站提供 AJAX交互。easy
34、u基于JQuery可以方便的创建风格统一的UI ,是小型系统快速开发的不 错选择。可以创建 window,datagrid,commbox,button常见控件。1.6运行测试系统设计完成后,最总要的一步就是系统运行测试。通过对最终软件系统进 行全面的测试,可以确保最终软件系统满足产品需求并且遵循了既定系统设计。 对于在线考试系统:作者制定了对系统功能的以下简单测试:1)系统登录测试:1 .要求能够实现学员、老师、管理员的登录功能;2 .在用户名或密码错误时候有必要提示;用户名失败提示图-14.5.次酬. fill tKTid助eWtZW工主,* 用审计 te w*«* iFTrf.
35、T±tS i?rirs 酮.甘重F不甘厘as Al KiWiL fHCBTYI-JL加卷n. tw/”沟t登录成功进入主页面图-152)学籍信息管理测试:1 .管理员登录后可以管理学籍信息;2 .系统对一些非法输入能够监测并处理;工电J就国EE. stt t®9BI antsu新增000005学生信息等生E71W9? H即.雷坦 E if IW1-=鼻帘?-SW59学史手号%MU班即电庙mt在堀1Q性LOIfliHH2妗0耳T1比】知'25B4虬办«*融tkL falitiiSOMM.wdt耳4必壮j*e朝空s3选艰Eli t k】.史.SOQftJ百q口吨喟HEJXTG&iM
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学校特色部管理制度
- 学校饮水机管理制度
- 学生科内勤管理制度
- 安全不放心管理制度
- 安全绩效奖管理制度
- 安检运营与管理制度
- 安装科安全管理制度
- 定制品定价管理制度
- 实行周计划管理制度
- 宠物驴日常管理制度
- 《幼儿生活活动保育》课程标准
- 上海市2023年初中毕业物理课程终结性评价指南
- 中国教师发展基金会国家教师科研基金规划全国重点课题实施指南
- (通桥【2018】8370)《铁路桥梁快速更换型伸缩缝安装图》
- “双减”背景下的初中数学课堂教学设计与思考 论文
- 工程项目管理对应丁士昭教材
- 义务教育语文课程标准(2022)测试题带答案(20套)
- (医院护理论文)护理本科生学习适应现状及影响分析
- 保护性约束完整版
- 明源地产erp3.04-费用管理操作手册
- 储气库地面工程建设技术发展及建议
评论
0/150
提交评论