基于JSP网上选课系统毕业论文.docx
《基于JSP网上选课系统毕业论文.docx》由会员分享,可在线阅读,更多相关《基于JSP网上选课系统毕业论文.docx(49页珍藏版)》请在冰豆网上搜索。
基于JSP网上选课系统毕业论文
基于JSP网上选课系统毕业论文
1绪论1
1.1课题背景1
1.2课题现状1
1.3课题目标2
1.4课题意义2
2网上选课系统需求分析2
2.1需求分析2
2.2可行性分析5
2.3系统配置要求5
3网上选课系统总体设计5
3.1项目规划5
3.2设计目标6
3.3相关技术介绍6
3.4数据库分析设计8
3.5系统模块设计13
4网上选课系统详细设计和实现15
4.1主界面设计15
4.2界面头尾设计16
4.3登录界面16
4.4学生用户界面设计16
4.5管理员用户界面设计24
4.6教师用户界面设计29
4.7系统后台模块30
5网上选课系统测试32
5.1测试目的32
5.2测试环境33
5.3测试结果33
总结39
参考文献40
致谢41
1绪论
1.1课题背景
Internet的发展使我们的教育更加现代化,网上信息管理是现代教育中的一个热点。
教师跟学生之间的信息传播只在一指之间,为现代教育创造了方便快速的途径。
但在安全性和信息更新化方面存在有一定的不足,各现有系统资料单独建立,共享性差;在以管理者为主体的方式中,信息取舍依赖管理者对于信息的认知与喜好,较不容易掌握用户真正的需求,也因此无法完全满足用户的需求。
目前国家的教育体制也正处在不断改革、创新的阶段,我国教育部门充分吸取国外优秀的教学模式,结合国多年的办学经验,逐步探索出适合中国特色的教学形式,国家教育部面向各级各类学校开展了全面学分制改革。
因此,教学管理软件应充分依托校园网,实现教学信息的集中管理、分散操作、信息共享,使传统的教学管理朝数字化、无纸化、智能化、综合化的方向发展,并为进一步实现完善的计算机教学文件管理系统和全校信息系统打下良好的基础。
学校教育是培养和输送人才的摇篮,它随着人类进步的程度和地区的不同而变化,教育的口径不断扩宽,对教育的要求也不断提高。
在信息爆炸的时代,传统教学管理面临着诸多挑战。
我们学校的管理需要有先进的计算机技术来不断改进教学水平和教学质量,在学生成绩管理、学生选课管理、学生贷款管理等很多方面都需要计算机来完成。
学习和开发计算机网络技术,跟上当今世界不断发展的脚步,更要创造出属于自己的技术。
1.2课题现状
随着学校规模的不断扩大,专业、班级、学生的数量急剧增加,有关学生选课的各种信息量也成倍增长,而目前许多高校的学生选课管理仍停留在复杂的人工操作上,重复工作较多,工作量大,效率低,性差,另外随着使用时间的增长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。
因此,迫切需要开发基于互联网的学生网上选课系统来提高管理工作的效率。
基于互联网的学生网上选课系统作为计算机应用的一部分,使用计算机对选课信息进行管理,有着手工管理所无法比拟的优点,例如:
检索迅速、查找方便、可靠性高、存储量大、性好、寿命长、成本低等。
这些优点能够极大地提高人事管理的与劳动资源的效率,在学生选课的规管理、科学统计和快速查询方面具有较大的实用意义,它提高了信息的开放性,大大地改善了学生、教师对其最新信息查询的准确性,也是高校的科学化、正规化管理的重要条件。
1.3课题目标
学生网上选课系统是高校教学管理系统的重要组成部分。
熟悉教学管理工作的全部过程,从教务工作的实际出发,解决工作中关键性的难点问题,并充分利用计算机网络功能,实现教学工作全过程的计算机管理,帮助具体管理人员从复杂烦琐工作中解放出来。
使得教学管理走向无纸化办公和规化、现代化管理。
由于Internet具有影响围广,能够方便快捷的传递信息,具有近乎实时的交互性,本身又是一个巨大无比的信息库等诸多优点。
所以我们的目标是用网上选课系统实现全校选修课程以及新闻的及时发布,创造现代化的学习环境。
学生选课是大学的主要管理工作之一,涉及到校、系、师、生的诸多方面,随着教学体制的不断改革,学生选课时的制约因素比较复杂,工作量也很大,而且往往需要在较短的时间完成。
运用计算机辅助选课,既能实时地对大量选课数据进行检验和统计,十分方便地输出选课结果,同时也避免了人工处理时容易产生的错误。
因此,开发一套这样的系统成为很有必要的事情。
1.4课题意义
通过学生网上选课系统的实现,不仅可以提高自己的开发经验,也解决了实际的问题,提高了学校的办公管理的效率,减少了工作出错的几率,节约了资金成本。
利用学生网上选课系统实现对全校选课信息的发布以及新闻的更新,使教师和学生意识到创造现代化学习环境的必要性。
学生选课是学校的主要管理工作之一,涉及到校、系、师、生诸多方面,随着教学体制的不断改革,学生选课时的制约因素也比较复杂,工作量较大,且需要在短时间完成,因此运用计算机辅助选课,不仅实时地对大量选课数据进行检验和统计,十分方便地输出选课结果,又避免了人工处理时容易产生的错误。
目前教师学生跟学校之间的信息传播只在一指之间,但在安全性和信息更新化方面存在有一定的不足。
各现有系统资料单独建立,共享性差;在以管理者为主体的方式中,信息取舍依赖管理者对信息的认知与喜好,不容易掌握用户真正的需求及无法完全满足用户的需求。
网上选课系统的设计与开发是从教务工作的实际出发,解决工作中关键性的难题,充分利用计算机网络功能,实现教学工作全过程的计算机管理。
帮助具体管理人员从复杂烦琐的工作中解放出来,使教学管理走向无纸化办公和规化、现代化管理。
2网上选课系统需求分析
2.1可行性分析
(1)经济可行性
系统界面友好,操作简单,系统的配置要求不高,实现可行,因此经济可行。
该系统可以容易实现学生与学校之间的联系,在Internet上实现完成部分教务工作,提高教务工作效率。
(2)技术可行性
随着互联网的蓬勃发展,越来越多的机构将科研管理与Internet融合到一起,以方便各高校管理。
在这样一个社会背景下,基于Windows和SQLServer2000,运用先进的JSP技术,采用B/S模式开发的学生网上选课系统,将学生、老师、管理员、有机地结合在一起,有效地提高管理水平和效率。
基于以上的技术在现今实现该系统的功能是可行的。
(3)操作性
本系统界面设计时充分考虑管理人员的习惯,使得操作简单;数据录入迅速、规、可靠;统计准确;制表灵活;适应力强;容易扩充。
2.2需求分析
2.2.1系统目标
学生选课系统作为一种现代化的教学技术,已越来越受到人民的重视。
是一个学校不可缺少的部分,它的容对于学校的决策者和管理者来说都至关重要,所以学生选课系统应该能够为用户提供充足的信息和快捷的查询手段。
但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:
效率低、性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。
本系统应解决的问题有:
实现教务处、教师及学生对选课工作的需求,提高对系统开发的认识与经验,将一些新的技术应用带到系统中来,保证系统的可维护性与可扩展性。
2.2.2系统功能
在本系统中,有三类用户:
系统管理员,教师和学生。
三种用户所具有的操作权限是不同的,相应的操作界面也有所不同。
管理员用户
(1)课程信息添加:
管理员用户登录后,进入课程信息管理功能单元,输入课程编号、课程名称、教师、上课时间、上课地点、学分这些数据后提交数据,完成课程信息地添加操作,此时在选课表中将出现刚才添加的课程的有关信息。
(2)课程信息修改:
管理员用户登录后,进入课程信息管理功能单元,如果是已经登录了,选择要修改的课程名,选定后就可以修改该选定课程的课程名称,教师等信息,提交后就得到该门课程修改后的信息。
(3)课程信息删除:
管理员用户登录后,进入课程信息管理功能单元,如果是已经登录了,选择要删除的课程名,提交后,就将选定课程删除了。
(4)管理员用户信息添加:
管理员用户登录后,进入用户信息管理功能单元,如果是已经登录进入了,输入用户名,用户密码,提交后就将新用户添加到了管理员表里面,即这个用户可以有管理员权限了。
(5)管理员用户信息修改:
管理员用户登录后,进入用户信息管理功能单元,如果是已经登录进入了,点击后就可以修改该用户的密码。
点击提交后就完成了该用户信息的修改,就得到了该用户修改后的信息。
(6)学生、教师用户添加:
管理员用户登录后,进入学生或教师用户添加单元,如果是已经登录,输入学生或教师基本信息,提交后,即可添加学生或教师用户。
(7)学生、教师用户删除:
管理员用户登录后,进入学生或教师用户删除单元,如果是已经登录,选择要删除的学生或教师,提交后,就将选定学生或教师删除了。
(8)公告发布:
管理员用户登录后,进入公告发布功能单元,如果是已经登录了,输入公告标题和公告容,提交后即可发布公告。
(9)公告修改:
管理员用户登录后,进入公告修改功能单元,如果是已经登录了,输入修改的公告标题和公告容,提交后即可修改公告。
(10)公告删除:
管理员用户登录后,进入公告删除功能单元,如果是已经登录了,选定要删除的公告,点击后即可删除。
学生用户
(1)学生选课:
学生用户登录后,进入选课管理功能单元,如果是已经登录进入了,即可以看到现阶段可供选择的课程信息,并支持模糊查询,点击选课后即成功选择该门课程并出现在该用户的课表中。
(2)学生删除选课:
学生用户登录后,进入课表管理功能单元,如果是已经登录了,即可看到所选课程列表,选中要删除的课程,点击后即可删除。
(3)学生个人密码修改:
学生用户登录后,进入密码修改功能单元,如果是已经登录进入了,点击后就可以修改该用户的密码。
点击提交后就完成了该用户信息的修改,就得到了该用户修改后的信息。
(4)公告浏览:
学生用户登录后,进入公告浏览能单元,点击选中的公告标题,即可浏览公告的详细容。
教师用户
(1)查看课程信息:
教师用户登录后,进入课表管理功能单元,即可查看教师所任教课程的信息,包括上课时间,上课地点,学分等。
(2)查看学生信息:
教师用户登录后,进入学生列表功能单元,即可查询选中该教师所任教课程的学生,包括其基本信息。
(3)教师个人密码修改:
教师用户登录后,进入密码修改功能单元,如果是已经登录进入了,点击后就可以修改该用户的密码。
点击提交后就完成了该用户信息的修改,就得到了该用户修改后的信息。
(4)公告浏览:
教师用户登录后,进入公告浏览能单元,点击选中的公告标题,即可浏览公告的详细容。
根据上面的要求,从操作功能上可以分为两个类:
一个是通用操作,主要实现用户的登录退出和修改密码等;另一种是为不同用户定制不同操作。
3网上选课系统总体设计
3.1项目规划
基于Windows操作系统和MicrosoftSQLServer2000数据库,建立一个B/S层结构的学生选课系统,使用JSP编程,实现学生的选课功能、以及教师查询上课信息。
网上选课系统从功能上划分一共有3个主模块,主要实现教师信息管理、学生信息管理、课程信息管理,其中教师信息管理有教师、教师工号、教师职称、教师所属系;学生信息管理有学生、学生学号和学生所在系;课程信息管理有课程名称、学分、上课地点、上课时间、上课教师。
管理员有权限去更改选课课程的信息。
身份登入:
学生,教师,管理员三中身份登入(权限不同)
用户管理:
管理员可以添加各种权限的用户,修改,和删除用户
课程管理:
可以对颁布的课程表进行添加,删除,修改
新闻发布:
管理员可以发布新闻并对其修改删除
3.2设计目标
建立一个学生网上选课系统,实现对课程的基本信息维护以及学生选课、教师上课信息。
系统对学生角色提供个人信息管理、选课管理、管理学生本人已选课程。
系统对教师提供查看自己所担任课程的课表和选该门课的学生信息。
系统同时给管理员以下功能:
查看所有专业、课程、学生、教师的信息并可以对它们进行管理(添加、编辑、删除)。
以及实现新闻的发布并修改。
提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改选课情况。
3.3相关技术介绍
3.3.1系统开发采用的技术法案——B/S模式
信息技术的高速发展使网络计算模式不断更新。
从单机时代的主机/终端模式、文件服务器时代的共享数据模式、客户机/服务器时代的Client/Server(客户机/服务器)模式,再到今天网络计算机时代的Browser/Server(浏览器/服务器)模式,计算模式发生了巨大变化。
同时计算模式的不断进步使管理软件的架构发生了很大变化。
系统综合还应用了B/S模式,即Browser/Server(浏览器/服务器)结构,是对C/S结构的一种改进。
B/S模式的好处还有运行维护比较简便,能实现不同的人员,从不同的地点,以不同的接入方式访问和操作共同的数据,解决了地域的限制。
而基于互联网应用系统都采用Browser/Server(浏览器/服务器)模式结构,在客户端中除Web浏览器外,要安装的软件便是一些插件和控件。
这些插件被设计于服务器端,并通过网络下载到客户端,而控件则是第一次浏览下载并注册的。
这是一种最小化的客户端安装及客户机模式,是目前客户服务器体系结构的发展方向。
3.3.2JSP技术介绍
JSP是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
该技术为创建显示动态生成容的Web页面提供了一个简捷而快速的方法。
JSP技术的设计目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器,应用服务器,浏览器和开发工具共同工作。
JSP规是Web服务器、应用服务器、交易系统、以及开发工具供应商间广泛合作的结果。
在传统的网页HTML文件(*htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(*.jsp)。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。
程序片段可以操作数据库、重新定向网页以及发送email等等,这就是建立动态所需要的功能。
所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低,可以实现无Plugin,无ActiveX,无JavaApplet,甚至无Frame。
JSP技术在多个方面加速了动态Web页面的开发:
一、将容的生成和显示进行分离
使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。
使用JSP标识或者小脚本来生成页面上的动态容(容是根据请求来变化的,例如请求帐户信息或者特定的一瓶酒的价格)。
生成容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。
如果核心逻辑被封装在标识和Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响容的生成。
在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的容(例如,通过访问JavaBeans组件,使用JDBCTM技术访问数据库,或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。
这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。
二、强调可重用的组件
JSP作为一个很好的动态网页开发语言得到了越来越广泛的使用,在各类JSP应用程序当中,JSP+JavaBean的组合成为了一种事实上最常见的JSP程序的标准。
JavaBean是描述Java的软件组件模型,有点类似于Microsoft的COM组件概念。
在Java模型当中,通过JavaBean可以无限扩充Java程序的功能,通过JavaBean的组件可以快速地生成新的应用程序。
对于程序员来说,最好的一点就是JavaBean可以实现代码的重复利用。
JavaBean是一种基于Java的软件组件。
JSP对于在Web应用中集成JavaBean组件提供了完善的支持。
这种支持不仅能缩短开发时间(可以直接利用经测试和可信任的已有组件,避免了重复开发),也为JSP应用带来了更多的可伸缩性。
JavaBean组件可以用来执行复杂的计算任务,或负责与数据库的交互以及数据提取等。
如果我们有三个JavaBean,它们分别具有显示新闻、股票价格、天气情况的功能,则创建包含所有这三种功能的Web页面只需要实例化这三个Bean,使用HTML表格将它们依次定位就可以了。
利用跨平台运行的JavaBean组件,JSP为分离处理逻辑与显示样式提供了卓越的解决方案。
3.3.3SQLSERVE2000数据库介绍
随着信息技术的发展,计算机处理数据的方式也发生着变化,文件管理系统--数据库管理系统。
MicrosoftSQLServer2000是一个分布式的关系型数据库管理系统,具有客户机/服务器体系结构,采用了Transact-sql的sql语言在客户机与服务器间传递客户机的请求与服务器的处理结果。
是一种应用广泛的数据库管理系统,具有许多显著的优点:
易用性、适合分布式组织的可伸缩性、用于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的性价比等。
3.4数据库分析设计
3.4.1数据库需求分析
学生选课管理系统的要求是要准确快捷地管理学生的信息。
学生隶属班级,学院;学生需要有课程,学分,成绩,而这些又都要靠教师或者管理人员来添加。
由此总结出如下需求信息:
用户分为管理员用户、教师用户和学生用户。
一个学生有多门课,一门课对应多个学生。
同时一个教师可以教授多门课程,一门课程可以有多个教授来教授,并且管理员可以发布新闻
经过对上述系统功能的分析和需求总结,设计如下数据项:
管理员信息:
用户名、密码。
学生信息:
学生ID、、性别、班级、年龄、学院、所在系
教师信息:
教师ID、、性别、年龄
课程信息:
课程ID、名称、上课时间、上课地点、学分、上课教师
班级信息:
班级ID、名称、班主任
新闻信息:
新闻ID、新闻标题、新闻容
3.4.2数据库概念结构设计
由上面的数据项可以设计出能够满足用户需求的各种实体以及它们之间的关系,为后面的逻辑结构设计打下基础。
这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。
本系统设计的实体有:
学生实体、教师实体、课程实体和班级实体。
如图3-1所示为实体间关系E-R图
该图介绍的是一个学生可以选多门课,一门课可以对应多个学生。
同时一个教师可以教授多门课程,一门课程可以有多个教授来教。
图3-1实体间关系E-R图
如图3-2所示为学生信息实体E-R图
该图介绍的是学生信息实体,包括学生学号、、性别、年龄、学院、所在系、班级等。
充分反映学生信息之间的各个关系。
图3-2学生信息实体E-R图
如图3-3所示为管理员信息实体E-R图
该图介绍的是管理员实体的相关信息,主要为登陆用户时所需的信息,包括用户名和密码。
图3-3管理员信息实体E-R图
如图3-4所示为教师信息实体E-R图
该图主要介绍教师实体的相关信息,主要包括教工号、、性别、年龄、学院、密码等。
图3-4为教师信息实体E-R图
如图3-5所示为课程信息实体E-R图
该图主要介绍课程实体的相关信息,主要包括课程号、课程名、上课时间、学分、上课地点、上课教师等。
图3-5为课程信息实体E-R图
3.4.3数据库表的设计和创建
根据以上分析和E-R图,系统数据库中各个表的设计结果如表3-6至表3-12。
每个表格表示数据库中的一个表。
如表3-6所示为用户表admin
该表记录管理员的用户名和密码。
管理员可以添加各种权限的用户,修改,和删除用户。
图3-6管理员表
如表3-7所示为学生表student
该表用来记录学生信息。
此记录的信息会详细地显示在学生登录后的页面上。
此信息不允许学生自己更新。
图3-7学生信息表
如表3-8所示为教师表teacher
该表用来记录教师信息。
图3-8教师信息表
如表3-9所示为课程表course该表用来记录课程信息表
图3-9课程信息表
如表3-10所示为选课表sc该表用来记录学生选课信息
图3-10选课信息表
如表3-11所示为新闻表article该表用来记录新闻信息
图3-11新闻信息表
如表3-12所示为班级表class该表用来记录班级信息
图3-12班级信息表
3.5系统模块设计
本系统包括3个管理模块,用户管理模块、课程管理模块、选课管理模块,用户模块分为3类用户,管理员、学生、老师。
管理员实现课程管理、学生、教师管理、和新闻发布管理。
本系统主要实现学生管理模块,而学生管理模块、课程管理模块、选课管理模块是与管理员和学生相关的主要模块。
如图3-13和图3-14所表示是从管理员和学生用户的角度给出的模块功能。
图3-13管理员功能模块
图3-14学生用户功能模块图
4网上选课系统详细设计和实现
4.1界面设计
4.1.1主界面设计
页面框架化。
本系统界面采用框架结构,把页面头、左边导航、右边正文放在不同的框架里面,当用户在左边导航选择不同的功能菜单时,只是在右边正文区刷新容,这样做使得页面结构清晰,便于用户操作。
系统的首页面index.jsp在页面左边显示出三种身份登录的。
便于不同用户清晰的看清登录的位置。
不同身份的用户登录提交的用户名和密码提交到不同身份的数据库认证页面中。
如学生用户登录提交到login.jsp。
当验证通过时,跳到学生用户的页面。
并把信息保存进session,以供其他页面判断用户是否已经登录。
系统首页如图4-1所示。
图4-1系统首页面
4.2登录界面
登录界面相对于主登陆界面较为简单,对不同身份的用户提供不同的登录页面,最终提交不同的认证页面。
当验证通过时,跳到用户使用页面。
以下以学生身份登录为例,教师和管理员身份登录页面类似。
图4-2学生登录页面
4.3学生用户界面设计
学生用户功能模块由四部分组成:
个人信息、网上平台、系统公告和其他。
个人信息:
显示出用户的所有个人信息并提供密码修改功能
网上平台:
提供学生用户查看所有选课信息,用户可以查询自己想找的课程,通过课程名和上课时间两种方式查找。
当用户点选课时,该课程就会添加到我的课表中,在数据库中选课表会添加一条记录。
用户在我的课表中可以退选课程
系统公告:
用户可以浏览系统通知。
其他功能:
退出系统
学生用户界面设计用框架实现。
页面头放在上框架,功能导航放在左框架,具体功能放在右框架。
学生功能设计所有页面都放在student的文件夹中,所以以下所提到的页面均在student文件夹中。
设置学生界面框架结构主页index.htm。
其中左框架中的功能导航页面为student_left.jsp,右框架中的功能页面为student_body.jsp。
系统用session保存用户的学号。
图4-3学生用户界面
其中框架的代码为:
DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Frameset//EN"".w3.org/TR/html4/frameset.dtd">