JSP课程设计学生成绩管理系统Word下载.docx
- 文档编号:17041990
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:21
- 大小:716.36KB
JSP课程设计学生成绩管理系统Word下载.docx
《JSP课程设计学生成绩管理系统Word下载.docx》由会员分享,可在线阅读,更多相关《JSP课程设计学生成绩管理系统Word下载.docx(21页珍藏版)》请在冰豆网上搜索。
本系统是将现代化的计算机技术和传统的教学、教务工作相结合,按照学院的工作流程设计完成的。
本系统能在学院的管理中发挥更大的作用,实现工作过程的计算机化,提高工作效率和工作质量,该系统的完成将具有以下几点重要的意义:
(1)系统具有较强的实用性、可靠性和适用性,同时也具有一定的先进性。
(2)对各个数据库能进行动态管理,有效的防止了数据的混乱。
(3)能够按照用户选择的不同的条件进行简单查询和复合查询。
(4)能够对查询结果进行分类汇总,实现报表打印。
(5)并且注意到了数据的安全性,具有数据备份和恢复的功能。
(6)简化了用户的操作过程,尽量减少用户的工作量。
2.系统的开发技术及主要架构
2.1开发技术的选择
合理的选择开发技术,对于网站开发的完成情况有着非常重要的影响。
要开发一个网站,首先要选择一个动态网页开发技术。
当前比较流行的动态网页开发技术有JSP、ASP、PHP。
它们的特性比较如表2-1所示:
表2-1asp/jsp/php比较表
技术名称
ASP
JSP
PHP
对数据库的支持
好
开发难易度
容易
较难
使用平台
Windows9X/NT
Windows/UNIX
UNIX
安全性
不好
对组件的支持
支持
不支持
执行方式
解释执行
编译之后执行
跨平台
这三种都是在传统的HTML代码中,利用HTML标签的扩展,构成页面。
不难看出,JSP的综合实力是最强的,尤其是在安全性和跨平台性两个方面,比其他的两种技术都要好,因此,最后我们选择基于Java的JSP技术作为动态网页的开发技术。
2.2项目开发的工具
本系统采用MyEclipse8.6+MySQL5.1.53+tomcat6.0.30开发
2.2.1MyEclipe简介
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSF,CSS,Javascript,SQL,Hibernate。
在结构上,MyEclipse的特征可以被分为7类:
1.JavaEE模型
2.WEB开发工具
3.EJB开发工具
4.应用程序服务器的连接器
5.JavaEE项目部署服务
6.数据库服务
7.MyEclipse整合帮助
对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。
MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。
2.2.2MySql简介
MySQL名字的来历MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司,在2008年1月16号被Sun公司收购。
MySQL被广泛地应用在Internet上的中小型网站中。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
与其他的大型数据库例如Oracle、DB2、SQLServer等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQLCluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。
对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。
2.2.3PowerDesigner简介
PowerDesigner是一个功能强大而使用简单工具集,提供了一个复杂的交互环境,支持开发生命周期的所有阶段,从处理流程建模到对象和组件的生成。
PowerDesigner产生的模型和应用可以不断地增长,适应并随着你的组织的变化而变化。
PowerDesigner系列产品提供了一个完整的建模解决方案,业务或系统分析人员,设计人员,数据库管理员DBA和开发人员可以对其裁剪以满足他们的特定的需要;
而其模块化的结构为购买和扩展提供了极大的灵活性,从而使开发单位可以根据其项目的规模和范围来使用他们所需要的工具。
PowerDesigner灵活的分析和设计特性允许使用一种结构化的方法有效地创建数据库或数据仓库,而不要求严格遵循一个特定的方法学。
PowerDesigner提供了直观的符号表示使数据库的创建更加容易,并使项目组内的交流和通讯标准化,同时能更加简单地向非技术人员展示数据库和应用的设计。
PowerDesigner不仅加速了开发的过程,也向最终用户提供了管理和访问项目的信息的一个有效的结构。
它允许设计人员不仅创建和管理数据的结构,而且开发和利用数据的结构针对领先的开发工具环境快速地生成应用对象和数据敏感的组件。
开发人员可以使用同样的物理数据模型查看数据库的结构和整理文档,以及生成应用对象和在开发过程中使用的组件。
应用对象生成有助于在整个开发生命周期提供更多的控制和更高的生产率。
2.2.4Tomcat简介
Tomcat是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。
由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现,Tomcat5支持最新的Servlet2.4和JSP2.0规范。
因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。
Tomcat很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;
而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。
Tomcat是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。
对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应对HTML页面的访问请求。
实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。
这里的诀窍是,当配置正确时,Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet。
另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。
不过,Tomcat处理静态HTML的能力不如Apache服务器。
2.3数据库的连接
本系统采用JDBC连接方式。
JDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。
JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯JavaAPI编写数据库应用程序。
有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。
换言之,有了JDBCAPI,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBCAPI写一个程序就够了,它可向相应数据库发送SQL调用。
同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。
Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法。
JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。
作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。
JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接。
JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。
Java具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。
所需要的只是Java应用程序与各种不同数据库之间进行对话的方法。
而JDBC正是作为此种用途的机制。
JDBC扩展了Java的功能。
例如,用Java和JDBCAPI可以发布含有applet的网页,而该applet使用的信息可能来自远程数据库。
企业也可以用JDBC通过Intranet将所有职员连到一个或多个内部数据库中(即使这些职员所用的计算机有Windows、Macintosh和UNIX等各种不同的操作系统)。
随着越来越多的程序员开始使用Java编程语言,对从Java中便捷地访问数据库的要求也在日益增加。
MIS管理员们都喜欢Java和JDBC的结合,因为它使信息传播变得容易和经济。
企业可继续使用它们安装好的数据库,并能便捷地存取信息,即使这些信息是储存在不同数据库管理系统上。
新程序的开发期很短。
安装和版本控制将大为简化。
程序员可只编写一遍应用程序或只更新一次,然后将它放到服务器上,随后任何人就都可得到最新版本的应用程序。
对于商务上的销售信息服务,Java和JDBC可为外部客户提供获取信息更新的更好方法。
3.需求分析
3.1功能分析
经过前期的深入调查和研究,总结出该系统需要完成的一些具体功能,分析如下:
管理员管理能够完成管理员对教师的信息管理(教师信息查询、信息修改、增加信息、信息删除)、学生管理(学生信息查询、选课查询、学生信息修改、学生信息删除)、课程管理(课程信息查询、课程管理)。
教师管理能够完成开设课程、成绩提交的功能。
学生管理能够完成个人信息查询、选择课程、密码修改的功能。
如图3-1为该系统的功能结构图。
图3-1功能模块图
3.2流程分析
3.2.1系统流程
只有在教师开设了某一门课程,并且在网上提交成功以后,学生才可以查询到此门课程,并且才可以选定课程,提交成功以后,待考试结束,教师即可对选择自己开设课程的学生录入成绩,并且提交。
如图3-2所示为整个过程的流程图。
图3-2选课系统流程图
3.2.2登录流程
登录的时候会根据用户的用户名进行判断是哪种身份的登录,并以不同的身份登录后执行不同的功能,具有不同的权限。
如图3-3所示为整个登录过程的流程图。
图3-3登录流程图
3.3系统概念模型描述
目前,在概念设计阶段实体联系模型是广泛使用的设计工具。
3.3.1构成系统的实体型
本系统包括学生、教师、班级三个主要实体。
学生实体型属性有学号、姓名、登录密码。
课程实体型属性有课程编号、课程名称、课程学分。
教师实体性属性有教师工号、教师姓名、登录密码。
3.3.2系统E-R图
系统的局部E-R图,只反映局部应用实体型之间的联系,但不能从整体上反映实体型之间的相互关系。
另外,对于一个较为复杂的应用而言,各部分是由多个分析人员合作完成的,画出的E-R图只能反映各局部应用。
各局部E-R图之间可能存在一些冲突和重复的部分。
为减少这些问题,必须根据实体联系在实际应用中的语义,进行综合、调整和优化,因此我们得到了系统的合成优化E-R图,如3-4图所示。
图3-4系统E-R图
3.4数据库设计
得出数据表的各个关系模式后,需要给出是各数据表结构。
考虑系统的兼容性及编写程序的方便性,可将关系模式的属性对应为表字段的英文名。
同时,考虑到数据依赖关系和数据完整性,需要指出表的主码和外码,以及字段的值域约束和数据类型。
数据库名:
stu_score_ms
1.数据表关系图如图3-5所示,该图包含数据库所有数据表之间的关系。
图3.5数据表关系图
2.course表存储课程信息,如表3-1所示。
表3-1课程表course
字段名
数据类型
是否为空
是否主键
默认值
描述
cid
varchar
NO
YES
课程号ID
cname
课程名
clnum
int
课时
credit
double
学分
capacity
课容量
3.student表存储学生信息,如表3-2所示。
表3-2学生表student
id
学生ID
sname
姓名
password
密码
sclass
班级
smajor
专业
4.teacher表存储教师信息,如表3-3所示。
表3-3教师表teacher
教师ID
tname
5.manager表存储管理员信息,如表3-4所示。
表3-4管理员表manager
管理员ID
mname
6.teachercourse表存储教师授课信息,如表3-5所示。
表3-5开设课程表teachercourse
tcid
教师开课号(自动编号)
tid
课程ID
7.studentcourse表存储学生所修课程信息,如表3-6所示。
表3-6学生选课表studentcourse
scid
学生选课号(自动编号)
sid
8.score表存储学生成绩信息,如表3-7所示。
表3-7学生成绩表score
gid
学生成绩号(自动编号)
pscore
平时成绩
qscore
期末成绩
grade
综合成绩
jpa
学分积点
9.rank表存储学生平均积点,用于学生排名,如表3-8所示。
表3-8学生平均积分表rank
rid
积点ID(自动编号)
averagepoint
平均积点
4.系统的设计与实现
4.1管理员模块功能
管理员模块详细表述:
首先进入登录界面,登录界面如图4-1所示。
图4-1登录页面
管理员登录以后可修改自己的密码,修改密码的界面如图4-2所示。
图4-2管理员修改密码
4.1.1教师信息管理
1.添加教师信息
添加教师的操作界面如图4-3所示。
图4-3添加教师信息
部分源代码:
publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException{
response.setContentType("
text/html;
charset=utf-8"
);
PrintWriterout=response.getWriter();
request.setCharacterEncoding("
utf-8"
Stringtid=request.getParameter("
tid"
Patternpattern=Ppile("
[0-9]*"
MatcherisNum=pattern.matcher(tid);
if(!
isNum.matches()){
JOptionPane.showMessageDialog(null,"
教师工号必须由数字组成!
!
"
"
警告"
1);
out.print("
教师工号输入错误!
正在返回,请稍候……"
response.setHeader("
refresh"
"
1;
url=/stu_score_ms/manager/addteacher.jsp"
return;
//不加return为何会继续执行后面代码?
?
}
teachertea=newteacher();
if(tea.isValid(tid)){
JOptionPane.showMessageDialog(null,"
该教师工号已经存在!
intn=JOptionPane.showConfirmDialog(null,"
确认添加?
确认框"
JOptionPane.YES_NO_OPTION);
if(n!
=0){
out.print("
取消添加!
response.setHeader("
url=/stu_score_ms/manager/showteacher.jsp"
return;
//不加return为何会继续执行后面代码?
}
2.显示教师信息
教师信息的显示以及对教师的删除、修改、查看课程的操作如图4-4所示。
图4-4显示教师信息
//修改
PrintWriterout=response.getWriter();
Stringtid,tname,password;
tid=request.getParameter("
t_id"
//----------------接收于updateteacher.jsp
intn=JOptionPane.showC
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JSP 课程设计 学生 成绩管理系统