ImageVerifierCode 换一换
格式:DOC , 页数:26 ,大小:1.05MB ,
资源ID:10662098      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-10662098.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于JSP的学生成绩管理系统的开发.doc)为本站会员(精品资料)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

基于JSP的学生成绩管理系统的开发.doc

1、1学生成绩管理系统1. 背景( 1)项目名称。学生成绩管理系统2. 目提出者广州康大职业技术学院( 3)项目承接者。15 软件 2 班( 4)用户。15 软件 2 班内容摘要:学生成绩管理系统采用 java,jsp,servlet 和 Mysql 数据库等工具,在工作 MyEclipse 上开发而成。学生成绩管理系统主要用于各类高校对教师的管理,同时初始化教师的登录信息;以及教师对学生,课程,学生成绩信息的管理,同时初始化了学生的登录信息。学生可以查询课程信息和自己的成绩信息。本系统能提高了教务的管理效率,大大地减轻了教师的负担,使学生能随时随地查询课程信息和自己的成绩。关键字:Java We

2、b ,学生成绩管理系统,信息管理系统1.选题的目的和意义1.1 项目开发的背景几年前,各个学校对于学生成绩的管理还是停留在运用手工操作,随着各个学校的规模不断壮大,学生人数逐年增加。关于学生成绩管理工作所涉及的数据量越来越大,有的学校不得不靠增加人力、物力来进行学生成绩管理。但人工管理又有着许多缺陷,比如:效率底、易出错、检索信息慢、对学校的管理提供决策信息较为困难等。所以我想借本次毕业设计之际,开发一个适用于高校的学生成绩管理系统,方便学校对各类信息的管理,减轻学校的负担。21.2 项目概述本管理系统主要内容是学生信息管理,课程信息管理,学生成绩管理和教师信息管理,管理员添加教师记录,初始化

3、教师的登录信息,教师添加学生记录,初始化学生登录信息等等。全文共分为概述、系统分析、系统总体设计、详细设计、开发总结、参考文献、附录等。1.3 设计目的与意义本系统是将现代化的计算机技术和传统的教学、教务工作相结合设计完成的系统,实现了工作过程的计算机化,提高工作效率和工作质量,该系统的完成将具有以下几点重要的意义:( 1) 系 统 具 有 较 强 的 实 用 性 、 可 靠 性 和 适 用 性( 2) 对 各 个 数 据 的 输 入 进 行 了 检 测 , 大 大 减 少 了 异 常 的 发 生 。( 3) 能 够 按 照 用 户 输 入 的 关 键 字 进 行 查 询(4) 注 意 到 了

4、 数 据 的 安 全 性 。(5)简化了用户的操作过程,尽量减少用户的工作量2 系统的开发技术及主要架构2.1 开发技术的选择由 于 JAVA 面 向 对 象 , 安 全 性 高 , 跨 平 台 , 易 移 植 , 易 掌 握 等特 点 , 尤 其 是 在 安 全 性 和 跨 平 台 性 两 个 方 面 非 常 显 著 。 因 此 , 最 后我 选 择 采 用 Java 技 术 开 发 这 个 系 统 。2.2 项目开发的工具这 个 web 系 统 的 服 务 器 采 用 开 源 的 Tomcat6.0,数 据 库 采 用 开 源的 MySQL。 在 MyEclipse 工 作 平 台 上 使

5、 用 Java、 JavaScript 与 JSP3技 术 , 采 用 MVC 模 式 开 发 。2.2.1 MyEclipe 简介MyEclipse 企 业 级 工 作 平 台 (MyEclipse Enterprise Workbench ),简 称 MyEclipse 是 对 Eclipse IDE 的 扩 展 , 利 用 它 我 们 可 以 很 方 便地 使 用 数 据 库 和 JavaEE 开 发 和 发 布 系 统 , 提 高 了 工 作 效 率 。2.2.2 MySql 简介MySQL 名字的来历是一个小型关系型数据库管理系统,开发者为瑞典 MySQLAB 公司,在 2008 年

6、 1 月 16 号被 Sun 公司收购。MySQL 被广泛地应用在 Internet 上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据库。2.2.3 Tomcat 简介Tomcat 是 Apache 软件基金会(Apache Software Foundation)的 Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为 Tomcat 技术先进、性能稳定,而且免费,因而深受 Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的

7、 Web 应用服务器。2.3 数据库的连接JDBC(Java Data 数据库连接)是一种用于执行 SQL 语句的Java API,可以为多种关系数据库提供一个标准的 API。据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,本系统采用 JDBC 连接数据库。43 可行性研究3.1 经济可行性分析本系统开发要耗去一定的时间,而所用的开发工具和软件基本是免费的。由于系统能够在未来一段时期内稳定地发挥作用,因此该系统对于管理学生成绩都有很大的帮助。由此可见,开发此系统在经济上是完全可行的。3.2 操作可行性分析如今的计算机已经进入各个家庭,硬件成本不断

8、的下降,计算机价格不断降低。该系统具有友好的用户界面、良好的安全性设置等,使用户可以很快地掌握系统的操作方法,因此在操作上是可行的。3.3 技术可行性分析从目前 IT 业内使用比较广泛的数据库和管理软件来看,使用比较简单的中小型数据库 Mysql 和 Java 开发该系统非常简单实用。该系统能为用户提供非常友好、操作简单的用户界面。因此,从技术可行性分析来看是可行的。3.4 可行性综合分析利用计算机实现学生管理系统势在必行。通过对当前的开发背景和上述几个可行性分析可以发现开发这个系统是可行的。本学生成绩管理向着规范化、简单化、有效化的方向发展。54 需求分析4.1 功能分析经过前期的深入调查和

9、研究,总结出该系统需要完成的具体功能,分析如下:管理员管理:能够实现管理员对教师信息添加,删除,修改和查询。初始化教师登录信息:用户 ID 为教师编号,初始密码也为教师编号,用户类型为教师。教师管理: 能够实现教师对学生信息,课程信息和成绩信息的添加,删除,修改和查询等功能;初始化学生登录信息:用户ID 为学号,初始密码也为学号,用户类型为学生。学生查询: 学生能够查询课程信息和自己的成绩信息。以上所有用户在登录后都可以修改自己的密码。4.2 系统数据流程图由以上的功能分析,得出如图 4-1 的系统数据流程图,该数据流程图直观地反映了该系统的整体框架和设计要求。管理员教师登录信息管理学生成绩课

10、程课程信息成绩信息登录信息初始化初始化查询管理6图 4-1 数据流程图5 网站总体设计用户登录时,系统先判断用户名是否存在,密码和用户类型是否正确。如果正确,则进入用户首页,进行相关的管理操作。如果错误,则用户要重新输入用户名,密码和选择用户类型。用户登录后根据用户类型,从而拥有不同权限。登录流程图和系统功能结构图如下所示。7图 5-1 登录流程图5.2 系统功能结构图成绩管理系统管理员教师管理学生查询教师信息管理学生信息管理课程信息管理成绩信息管理课程信息查询成绩信息查询图 5-2 系统功能结构图6 数据库设计6.1 系统实体 E-R 图8图 6-1 学生实体 E-R 图图 6-2 课程实体

11、 E-R 图图 6-3 成绩实体 E-R 图9图 6-4 教师实体 E-R 图图 6-5 系统用户实体 E-R 图6.2 实体联系图从上面的需求分析和总体设计得出管理员,教师,学生,课程和成绩实体之间的联系图如下图所示:10图 6-6 系统总体联系图6.3 逻辑结构设计根据系统的功能描述,设计要用的数据表。因为这些表之间相互关联,存储着系统的相关数据,所以在设计数据表的过程中,要求设计一个表只存储一个实体或对象的相关信息,不同实体存储在不同的表中。本系统需要设计的数据库表如以下各图。表 6-7 学生表 studb字段 字段名 类型 可否为空 主键ino 学号 varchar(10) 否 是na

12、me 姓名 varchar(10) 否sex 性别 varchar(5)age 年龄 intsys 所在系 varchar(20)grade 班级 varchar(20)表 6-8 课程表 couinfo字段 字段名 类型 可否为空 主键cno 课程编号 varchar(10) 否 是cname 课程名称 varchar(10) 否tname 任课老师 varchar(10)11credit 学分 float表 6-9 成绩表 scoinfo字段 字段名 类型 可否为空 主键ino 学号 varchar(10) 否 是cno 课程编号 varchar(10) 否 是type 成绩类型 varc

13、har(10) 否 是score 分数 int 否表 6-10 教师表 teainfo字段 字段名 类型 可否为空 主键tno 教师编号 varchar(10) 否 是tname 教师姓名 varchar(10) 否tsex 教师性别 varchar(5)tsys 所在系 varchar(10)表 6-11 用户信息表 user字段 字段名 类型 可否为空 主键id 用户 ID varchar(10) 否 是name 用户姓名 varchar(10) 否password 密码 varchar(10) 否job 用户身份 varchar(10) 否7 系统主要功能模块详细设计7.1 用户登录用户

14、登录需要验证用户的用户名,密码和身份。如果登录成功,页面就会跳转到相关页面,如果登录失败登录界面就会显示提示信息,登录界面如下12图 7-1 登录界面7.2 网站管理教师,管理员和学生登录系统后拥有不同权限,详细介绍如下所示:7.2.1 教师身份登录后的管理界面图 7-2 教师管理首页教师管理三个模块:学生信息管理,课程信息管理和成绩信13息管理,教师登录后可以点击“修改口令”修改自己的口令,点击“退出系统”返回登录界面,修改口令的界面如下图图 7-3 密码修改界面如果新密码为空,则提示“修改失败,新口令不能为空!” ,如果新密码和确认密码不同,则提示“口令修改失败” ,相同则提示“口令修改成

15、功” ,口令修改失败的界面如下图图 7-4 密码修改失败界面学生信息管理模块:在图 7-2 中点击“学生信息管理”后进入学生信息管理,界面,点击后的界面如下图图 7-5 学生信息管理界面14在“跳到”后输入 2,点击“Go”后,列表跳转到第 2 页,当输入小于 0 的数,点击“Go”后,提示输入格式不对,请重新数字,当输入大于或等于分页总数的数字时,跳转到最后一页点击“首页”回到第一页,点击“尾页”回到最后一页点击“上一页”回到上一页,点击“下一页”回到下一页这个页面实现了教师对学生基本信息的管理(添加,删除,修改,查询),同时添加了一条学生登录记录,初始密码为学生的学号,添加学生信息的关键代

16、码(学生信息管理的添加实现类)如下:public boolean doCreate(Stu stu,User user) throws Exception boolean flag=false;String sql1=“insert into studb(ino,name,sex,age,sys,grade)values(?,?,?,?,?,?)“;this.pst1=this.conn.prepareStatement(sql1);this.pst1.setString(1,stu.getIno();this.pst1.setString(2, stu.getName();this.pst1

17、.setString(3, stu.getSex();this.pst1.setInt(4, stu.getAge();this.pst1.setString(5, stu.getSys();this.pst1.setString(6, stu.getGrade();String sql2=“insert into user(id,name,password,job)values(?,?,?,?)“;this.pst2=this.conn.prepareStatement(sql2);this.pst2.setString(1,user.getId();this.pst2.setString(

18、2, user.getName();this.pst2.setString(3, user.getPassword();this.pst2.setString(4, user.getJob();if(this.pst1.executeUpdate()0this.pst1.close();this.pst2.close();return flag;15点击“添加”添加学生信息后的界面如下图:图 7-6 学生信息添加界面学号为数字或字母,如果是其他的特殊符号,系统提示出错并清空学号后的文本框,年龄是 2 位数的整数,否则提示出错清空年龄后的文本框。每一个文本框都要填,如果有其中一个文本框没有填就提

19、交,提示没有填的文本框不能为空。教师添加一条学生信息记录,就同时添加了一条学生登录记录,该学生的登录 ID 为学号,登录密码也为学号,用户姓名为学生姓名,用户类型为学生,学生登录后可以修改自己的登录密码。修改学生信息的关键代码(学生信息管理的修改实现类)如下:public boolean doUpdate(Stu stu,User user) throws Exception boolean flag=false;String sql1=“update studb set name=?,sex=?,age=?,sys=?,grade=? where ino=?“;this.pst1=this.

20、conn.prepareStatement(sql1);this.pst1.setString(1, stu.getName();this.pst1.setString(2, stu.getSex();this.pst1.setInt(3, stu.getAge();this.pst1.setString(4, stu.getSys();this.pst1.setString(5, stu.getGrade();this.pst1.setString(6, stu.getIno();16String sql2=“update user set name=? where id=?“;this.p

21、st2=this.conn.prepareStatement(sql2);this.pst2.setString(1, user.getName();this.pst2.setString(2, user.getId();if(this.pst1.executeUpdate()0this.pst1.close();this.pst2.close();return flag;点击图 7-5 的列表中的要修改的数据后的“修改”修改学生信息,例如点击第一条记录后的“修改” ,界面如下图图 7-7 学生信息更新界面只要不修改主键“学号” ,年龄为整数,每一项都不为空,就能成功修改记录。点击图 7-5

22、的列表中的要删除的数据后的“删除”删除一条记录。删除学生信息的关键代码(学生信息管理的删除实现类)如下:public boolean doDelete(Stu stu,User user) throws Exception boolean flag=false;String sql1=“delete from studb where ino=?“;this.pst1=this.conn.prepareStatement(sql1);this.pst1.setString(1, stu.getIno();17String sql2=“delete from user where id=?“;th

23、is.pst2=this.conn.prepareStatement(sql2);this.pst2.setString(1, user.getId();if(this.pst1.executeUpdate()0this.pst1.close();this.pst2.close();return flag;例如点击任意一条记录后的“删除” ,弹出如下图的提示框图 7-8 记录删除提示框点击“确定”后记录删除成功,点击“取消”后返回原界面,删除失败在图 7-5 的文本框中输入学生姓名(可输入模糊信息) ,查询学生信息的关键代码(学生信息管理的查询实现类)如下:public List findAl

24、l(String keyWord) throws Exception List all=new ArrayList();String sql=“select * from studb where name like ?“;this.pst=this.conn.prepareStatement(sql);this.pst.setString(1, “%“+keyWord+“%“);ResultSet rs=this.pst.executeQuery();Stu stu=null;while(rs.next()18stu=new Stu();stu.setIno(rs.getString(1);s

25、tu.setName(rs.getString(2);stu.setSex(rs.getString(3);stu.setAge(rs.getInt(4);stu.setSys(rs.getString(5);stu.setGrade(rs.getString(6);all.add(stu);this.pst.close();return all;在图 7-5 的文本框中输入学生姓名(可模糊查询) ,例如输入“01”,点击“查询”后的界面如下:图 7-9 信息查询结果图点击图 7-2 中的“课程信息管理”进入课程管理模块,界面如下:19图 7-10 课程信息管理界面点击图 7-2 中的“成绩信

26、息管理”进入成绩管理模块,界面如下:图 7-11 成绩信息管理界面图这两个模块和学生信息管理系统模块类似,编辑过程一样207.2.2 管理员身份登录后的管理界面图 7-12 管理员首页图点击“教师管理”进入教师管理模块,如下图所示图 7-13 教师信息管理界面这个模块和学生信息管理系统模块类似,编辑过程一样管理员添加一条教师信息记录,就同时添加了一条教师登录记录,该教师的登录 ID 为教师编号,登录密码也为教师编号,用户姓名为教师姓名,用户类型为教师,教师登录后可以修改自己的登录密码。217.2.2 学生身份登录后的查询界面图 7-14 学生查询首页点击“修改口令”修改自己的登录密码,点击“退

27、出系统”返回到登录界面,学生登录后可以查询课程信息和自己的成绩信息点击“课程信息”查询课程信息,界面如下图所示:图 7-15 课程信息查询点击“成绩信息”查询自己的成绩信息,界面如下图所示:22图 7-16 成绩信息查询8 系统测试8.1 测试原则软件测试的基本原则是站在用户的角度,对产品进行全面测试,尽早、尽可能多地发现问题,并负责跟踪和分析产品中的问题,具体测试原则有如下几点:第一,测试应该尽早进行,最好在需求阶段就开始介入,因为最严重的错误不外乎是系统不能满足用户的需求。第二,设计测试用例时应考虑到合法的输入和不合法的输入以及各种边界条件,特殊情况下不要制造极端状态和意外状态。第三,制定

28、严格的测试计划。一定要制定测试计划,并且要有指导性。测试时间安排尽量宽松,不要希望在极短的时间内完成一个高水平的测试。第四,妥善保存测试计划、测试用例、出错统计和最终分析报告,为维护提供方便。8.2 测试用例根据系统的设计流程,一个一个模块地测试,要测试的模块如下:登录模块,密码修改模块,教师管理模块,管理员管理模块和学生查询模块等。具体的测试用例,预期结果如下详细介绍:23用户登录和密码修改的测试用例测试用例场景 测试用例 预期结果 实际结果TC1 用户登录打开系统,输入用户 ID,密码和选择身份后点击登录,登录系统判断用户的用户ID 是否存在,密码和用户类型是否正确若正确。如果正确,成功登

29、录。否则,提示出错信息,要重新输入。同预期TC2 修改密码进入系统管理页面后,点击“修改密码”后输入新密码和确认密码判断新密码是否为空,如果为空,提示修改失败,新口令不能为空;再判断新密码和旧密码是否相同,若相同则修改成功,若不同则修改失败同预期TC3 退出系统点击“退出系统”后在弹出的提示框中选择“确定”或“取消”如果选择“确定”则退出系统,如果选择“取消”则退出系统失败,返回原界面同预期教师管理页面的测试用例测试用例场景 测试用例 预期结果 实际结果TC1 学生信息管理进入教师管理,点击学生信息管理,测试添加,删除,修改,查询功能,测试添加的学对学生信息的添加,删除,修改操作达到了预期效果

30、;添加的学生能以学号登录系统,当删除该同预 期24生记录信息登录系统的效果学生记录后,该学生则不能登录系统TC2 课程信息管理进入教师管理,测试添加,删除,修改,查询功能对课程信息的添加,删除,修改操作达到了预期效果同预期TC3 成绩信息管理进入教师管理,分别测试添加,删除,修改,查询功能对成绩信息的添加,删除,修改操作达到了预期效果同预期管理员管理页面的测试用例测试用例场景 测试用例 预期结果 实际结果TC1 教师信息管理进入管理员管理首页,点击教师信息管理,分别测试添加,删除,修改,查询功能,并且测试以编辑的学生记录信息登录系统的效果对教师信息的添加,删除,修改操作达到了预期效果,并且能查

31、询到效果添加的教师能以教师编号登录系统,当删除该教师记录后,该教师不能登录系统同预期学生管理页面的测试用例测试用例场景 测试用例 预期结果 实际结果TC1 课程信息查询以任意学生身份登录系统,点击课程信息,查询的结果是学校所有的课程,无误同预期25核对课程信息TC2 成绩信息查询以任意学生身份登录系统,点击成绩信息,查询个人的成绩查询到的成绩是自己个人的考试成绩,无误同预期8.3 测试小结本章主要测试了学生成绩管理系统的可行性,并且介绍了专门针对本系统的测试方式,描述了一些简单的测试用例。此外,还介绍了对系统进行测试的预期结果和最后的实际结果。从总体上来说,整个系统的设计都比较符合要求,圆满地

32、完成了开题报告中所提出的设计要求,基本上达到了这次系统开发的预期效果。9 总结毕业设计是大学本科教育最后一个重要的实践环节,重培养学生综合运用本学科的基本理论、专业知识和基本技能,提高分析与解决实际问题的能力。在使用 java 开发这个系统的过程中,我深刻地认识到需求分析在整个软件开发流程中的重要性,没有做好需求分析就开发系统,问题发现地越晚,所付出的的代价就越大。同时,我也感受到了在整个软件开发的流程中,可能会碰到一些难以预料的问题,这时就需要多在网上或书上找资料,多向老师和同学寻求帮助,不断思考,寻找各种解决方案。系统总体上实现了预期中的效果,方便了管理员管理教师信息,教师管理学生信息,课程信息和成绩信息。用户在添加记录时又进行了数据检测,避免数据库中出现无效数据。管理员在添加教师和教师在添加学生时都同时添加了登录信息,初始化了登录密码,方便了用户管理。学生只能查询自己的成绩信息,提高了学生用户的隐私。由于个人能力和时间有限,系统还有一些不足,有待改进,希望老师们提出宝贵意见,我会尽力去改善。在次,多亏了指导老师和同学们的帮助,使我成功完成了这个系统。26在这里,我表示衷心的感谢

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报