JSP学生网上选课系统设计(源代码+论文+答辩PPT)

摘要

随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。学生选课系统作为一种现代化的教学技术,以越来越受到人民的重视,是一个学校不可缺少的部分, 学生选课系统就是为了管理好选课信息而设计的。学生选课系统的将使选课管理工作规范化,系统化,程序化,避免选课管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改选课情况。

系统实现了对课程的基本信息和学生选课、学生和教师用户进行管理。系统对学生角色提供个人信息查看、选课管理以及其他功能;对教师提供查看自己所担任课程的课表和选该门课程的学生信息;提供给管理员以下功能:查看所有课程、学生、教师的信息并可以对它们进行管理(添加、编辑、删除),以及实现新闻的发布并修改。

关键字:选课、课程信息发布、B/S、SQL Server 2000、JSP

Abstract

With the improvement of science technology, the computer science becomes gradually mature, people have already deeply understood its strong function, and it has already got into each realm of the human society to exert a more and more important function. The student selecting system, a modernizing teaching technology, pays much more attention by people. It is indispensable part for a school. The student selecting system is for the sake of managing to the information of selecting courses. The tendency of student selecting system will edify the selecting management, it would be more systematical and procedural in future work. We try to avoid the random work, promoting the accuracy and speed of the processing information, so that we can check the information of selecting course with a convenient and efficient form.

The system carried out the management of basic information of course, the student selecting course, the student and the teacher's customer. The system provides a function, which is good for students to check their personal information and the management of selecting course, to the characters of the students. And for the teachers, it is convenient to look into the curricular lesson that he hold and the Student's information that chose the course. At last, it is good for manager to check all the information of the lessons, students and teachers. Furthermore, it can carry on a management (increase, edit, delete) to them, and carry out the renounce of the news.

Key words: select course, the renouncement of course information, B/S、SQL Server 2000、JSP

目录

SCIENCE & TECHNOLOGY COLLEGE OF- 1 -

NANCHANG UNIVERSITY- 1 -

THESIS OF BACHELOR- 1 -

摘要- 2 -- 2 -

Abstract- 3 -

目录- 4 -- 4 -

第一章 绪论- 5 -- 5 -

1.1 课程背景- 5 -- 5 -

1.2 课程现状- 6 -- 6 -

第二章 系统需求分析- 6 -- 6 -

2.1 需求分析- 6 -- 6 -

2.2可行性分析- 7 -- 7 -

2.3系统配置需求- 7 -- 7 -

第三章 系统总体设计- 8 -- 8 -

3.1 项目规划- 8 -- 8 -

3.2 设计目标- 8 -- 8 -

3.3 系统相关技术介绍- 8 -- 8 -

3.3.1系统开发采用的技术方案——B/ S模式- 8 -- 8 -

3.3.2 JSP技术介绍- 8 -- 8 -

3.3.3 SQL 2000 SERVE 数据库介绍- 10 -- 10 -

3.4 数据库分析设计- 10 -- 10 -

3.4.1 数据库需求分析- 10 -- 10 -

3.4.2 数据库概念结构设计- 10 -- 10 -

3.4.3 数据库表的设计和创建- 12 -- 12 -

第四章 系统详细设计和实现- 15 -- 15 -

4.1 主界面设计- 16 -- 16 -

4.2 界面头尾设计- 16 -- 16 -

4.3 登录界面- 16 -- 16 -

4.4学生用户界面设计- 17 -- 17 -

4.4.1 个人信息模块功能模块设计- 18 -- 18 -

4.4.2 网上平台模块功能设计- 19 -- 19 -

4.4.3 系统公告- 21 -- 21 -

4.4.4 其他功能模块设计- 22 -- 22 -

4.5 管理员用户界面设计- 22 -- 22 -

4.5.1用户管理模块功能设计- 23 -- 23 -

4.5.2 网上平台模块功能设计- 24 -- 24 -

4.5.3 系统公告模块设计- 25 -- 25 -

4.5.4 其他功能模块设计- 26 -- 26 -

4.6 教师用户界面设计- 26 -- 26 -

4.7 系统后台模块- 27 -- 27 -

参考文献- 28 -- 28 -

第一章 绪论

1.1 课程背景

Internet的发展给我们的教育更加现代化,现在网上信息管理是我们现在教育中的一个热点。现在,教师学生跟学校的之间的信息传播只在一指之间,时为我们创造方便快速的途径。在安全性和信息更新化方面存在有一定的不足,各现有系统资料单独建立,共享性差;在以管理者为主体的方式中,信息取舍依赖管理者对于信息的认知与喜好,较不容易掌握用户真正的需求,也因此无法完全满足用户的需求。目前国家的教育体制也正处在不断改革、创新的阶段,我国教育部门充分吸取国外优秀的教学模式,结合国内多年的办学经验,逐步探索出适合中国特色的教学形式,国家教育部面向各级各类学校开展了全面学分制改革。因此,教学管理软件应充分依托校园网,实现教学信息的集中管理、分散操作、信息共享,使传统的教学管理朝数字化、无纸化、智能化、综合化的方向发展,并为进一步实现完善的计算机教学文件管理系统和全校信息系统打下良好的基础。《学生网上选课系统》是高校教学管理系统的重要组成部分。熟悉教学管理工作的全部过程,从教务工作的实际出发,解决工作中关键性的难点问题,并充分利用计算机网络功能,实现教学工作全过程的计算机管理,帮助具体管理人员从复杂烦琐工作中解放出来。使得教学管理走向无纸化办公和规范化、现代化管理。

由于 Internet 具有影响范围广,能够方便快捷的传递信息,具有近乎实时的交互性,本身又是一个巨大无比的信息库等诸多优点。学生网上选课系统,可以提高教师,学生和学校的管理效率。我们的目标是用学生网上选课系统实现最快对全校选修课程发布以及新闻发布,使教师和学生最快知道,创造现代化的学习环境。学生选课是大学的主要管理工作之一,涉及到校、系、师、生的诸多方面,随着教学体制的不断改革,学生选课时的制约因素比较复杂,工作量也很大,而且往往需要在较短的时间内完成。在这里,运用计算机辅助选课,即能实时地对大量选课数据进行检验和统计,十分方便地输出选课结果,同时也避免了人工处理时容易产生的错误。

第二章 系统需求分析

2.1 需求分析

学生选课系统作为一种现代化的教学技术,以越来越受到人民的重视。是一个学校不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生选课系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。

本系统具体有以下功能:

  • 个人信息:包括学生和学生的个人资料
  • 课程计划:计划课程的开课时间,上课地点,上课老师等信息
  • 管理功能:课程发布,修改,删除。学生,老师用户的添加删除。新闻的发布和删除和修改
  • 教师用户:教师可以修改密码,查看课程和选修自己课程的学生列表以及查看新闻
  • 学生用户:选修课程,可以取消选择
  • 条件查询:用户可以查询自己所需的资料
  • 退出系统

2.2可行性分析

1.经济性

系统界面友好,操作简单,系统的配置要求不高,实现可行,因此经济可行。该系统可以容易实现学生,老师与学校之间的联系,在Internet上实现完成部分教务工作,提高办事效率,和周期。

2.技术性

随着互联网的蓬勃发展,越来越多的机构将科研管理与Internet融合到一起,以方便个高校管理。在这样一个社会背景下,基于Windows和SQL Server 2000 ,运用先进的JSP技术,采用B/S模式开发的学生网上选课系统,将学生、老师、管理员、有机地结合在一起,有效地提高管理水平和效率。随着科学技术的不断提高,计算机科学日渐成熟,基于以上的技术在现今比较容易实现。

3.操作性:

该系统操作方便,简单。

2.3系统配置需求

(1)服务器配置

硬件平台:

CPU:P4 1.8GHz以上;

内存:256MB以上。

软件平台:

操作系统:Windows 2000 Server;

数据库:SQL Server 2000;

开发工具包:JDK Version 1.4.2;

JSP 服务器:Tomcat 5.0;

第三章 系统总体设计

3.1 项目规划

基于Windows操作系统和Microsoft SQL Server 2000数据库,建立一个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.2 JSP技术介绍

JSP是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。该技术为创建显示动态生成内容的Web页面提供了一个简捷而快速的方法。JSP技术的设计目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器,应用服务器,浏览器和开发工具共同工作。 JSP规范是Web服务器、应用服务器、交易系统、以及开发工具供应商间广泛合作的结果。在传统的网页HTML文件(*htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(*.jsp)。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送 email 等等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低,可以实现无Plugin,无ActiveX,无Java Applet,甚至无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.3 SQL 2000 SERVE 数据库介绍

随着信息技术的发展,计算机处理数据的方式也发生着变化,文件管理系统--数据库管理系统。Microsoft SQL Server2000是一个分布式的关系型数据库管理系统,具有客户机/服务器体系结构,采用了Transact-sql的sql语言在客户机与服务器间传递客户机的请求与服务器的处理结果。是一种应用广泛的数据库管理系统,具有许多显著的优点:易用性、适合分布式组织的可伸缩性、用于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的性价比等。

3.4 数据库分析设计

3.4.1 数据库需求分析

学生选课管理系统的要求是要准确快捷地管理学生的信息。学生隶属班级,学院;学生需要有课程,学分,成绩,而这些又都要靠教师或者管理人员来添加。由此总结出如下需求信息:

  • 用户分为管理员用户、教师用户和学生用户。
  • 一个学生有多门课,一门课对应多个学生。
  • 一个教师可以教授多门课程,一门课程可以有多个教授来教授。
  • 管理员可以发布新闻

经过对上述系统功能的分析和需求总结,设计如下数据项:

  • 管理员信息:用户名、密码。
  • 学生信息: 学生ID、姓名、性别、班级、年龄、学院、所在系
  • 教师信息: 教师ID、姓名、性别、年龄
  • 课程信息: 课程ID、名称、上课时间、上课地点、学分、上课教师
  • 班级信息: 班级ID、名称、班主任
  • 新闻信息: 新闻ID、新闻标题、新闻内容

3.4.2 数据库概念结构设计

由上面的数据项可以设计出能够满足用户需求的各种实体以及它们之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。本系统设计的实体有:学生实体、教师实体、课程实体和班级实体。

如图 3-1所示为实体间关系E-R图

如图 3-2为学生信息实体E-R图

如图 3-3为管理员信息实体E-R图

如图 3-4为教师信息实体E-R图

如图 3-5为课程信息实体E-R图

3-1所示为实体间关系E-R图

3-2为学生信息E-R图

系统用户

图 3-3为管理员信息E-R图

图 3-4为教师信息E-R图

3-5为课程信息实体E-R图

3.4.3 数据库表的设计和创建

根据以上分析和E-R图,系统数据库中各个表的设计结果如表3-7至表 每个表格表示数据库中的一个表。

用户表admin(如表3-8所示)记录管理员的用户名和密码。管理员可以添加各种权限的用户,修改,和删除用户。

图3-8 管理员表

学生表student,用来记录学生信息。此记录的信息会详细地显示在学生登录后的页面上。此信息不允许学生自己更新。

图3-9学生信息表

教师表teacher用来记录教师信息。

图3-10教师信息表

课程表 course 用来记录课程信息表

图3-11课程信息表

选课表sc 记录学生选课信息

图3-12选课信息表

新闻表 article 记录新闻信息

图3-13新闻信息表

班级表 class记录班级信息

图3-14班级信息表

3.5 系统模块设计

本系统包括3个管理模块用户管理模块、课程管理模块、选课管理模块,用户模块分为3类用户,管理员、学生、老师。管理员实现课程管理、学生、教师管理、和新闻发布管理。本系统主要实现学生管理模块,而学生管理模块、课程管理模块、选课管理模块的与管理员和学生相关的主要模块。

如图3-17和图3-18所表示是从管理员和学生用户的角度给出的模块功能。

图3-17 管理员功能模块

图3-27 学生用户功能模块图

第四章 系统详细设计和实现

4.1 主界面设计

页面框架化。本系统界面采用框架结构,把页面头、左边导航、右边正文放在不同的框架里面,当用户在左边导航选择不同的功能菜单时,只是在右边正文区刷新内容,这样做使得页面结构清晰,便于用户操作。

系统的首页面index.jsp在页面左边显示出三种身份登录的链接。便于不同用户清晰的看清登录的位置。不同身份的用户登录提交的用户名和密码提交到不同身份的数据库认证页面中。如学生用户登录提交到login.jsp。当验证通过时,跳到学生用户的页面。并把信息保存进session,以供其他页面判断用户是否已经登录。

系统首页如图4-1所示。

图4-1系统首页面

4.2 界面头尾设计

为了界面实现面界面重用,系统把界面头和尾作成公用界面,这样其他页面引用入就可以了。本例头尾设计比较简单。将头尾设计为inc文件夹下的head.html和tail.html文件

4.3 登录界面

登录界面做的相对简单,对不同身份的用户提供不同的登录页面,最终提交不同的认证页面。当验证通过时,跳到用户使用页面。

以下以学生身份登录为例,教师和管理员身份登录页面类似。

图4-2 登录页面

4.4学生用户界面设计

学生用户功能模块由四部分组成:个人信息、网上平台、系统公告和其他。

  • 个人信息:显示出用户的所有个人信息并提供密码修改功能
  • 网上平台:提供学生用户查看所有选课信息,用户可以查询自己想找的课程,通过课程名和上课时间两种方式查找。当用户点选课时,该课程就会添加到我的课表中,在数据库中选课表会添加一条记录。用户在我的课表中可以退选课程
  • 系统公告:用户可以浏览系统通知。
  • 其他功能:退出系统

学生用户界面设计用框架实现。页面头放在上框架,功能导航放在左框架,具体功能放在右框架。学生功能设计所有页面都放在student的文件夹中,所以以下所提到的页面均在student文件夹中。设置学生界面框架结构主页index.htm。其中左框架中的功能导航页面为student_left.jsp,右框架中的功能页面为student_body.jsp。

系统用session保存用户的学号。

图4-3学生用户界面

其中框架的代码为:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">

<html>

<head>

<link href="../style.css" rel="stylesheet" type="text/css">

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<title>学生选课系统</title>

</head>

<frameset align="center" rows="129,*" cols="*" frameborder="NO" border="0" framespacing="0">

<frame src="../inc/head.htm" name="topFrame" scrolling="NO" noresize >

<frameset align="center" rows="*" cols="153,*" framespacing="0" frameborder="NO" border="0">

<frame align="center" src="student_left.jsp" name="leftFrame" scrolling="NO" noresize>

<frame align="center" src="student_body.jsp" name="mainFrame">

</frameset>

</frameset><noframes></noframes>

<frameset align="center" rows="5,*" cols="*" frameborder="NO" border="0" framespacing="0">

</frameset>

<body>

</body>

</html>

4.4.1 个人信息模块功能模块设计

个人信息模块包括个人资料和修改密码两部分。个人资料显示学生的所有信息,包括学号、姓名、学院、系别、班级。密码修改部分:用户可以根据自己的需要修改密码,方便用户管理。

如图4-4个人资料显示页面,4-5 密码修改页面。

图4-4个人资料显示页面

图4-5 密码修改页面

4.4.2 网上平台模块功能设计

网上平台由两部分组成:选课信息和我的课表

  • 选课信息:学生用户查看所有选课信息,并提供用户模糊查询,使用户可以查询自己想找的课程,模糊查询通过课程名和上课时间两种方式查找。在课程列表中当用户点选课栏时,该课程就会添加到我的课表中,在数据库中选课表会添加一条记录。
  • 我的课表:学生选课后可以通过查看我的课表清楚的看到自己的选课情况,以及上课的时间、地点、学分等信息。当学生用户发现修要改动时可以选择退选项,取消选择。

选课信息:courseInfo.jsp 我的课表:noticeList.jsp

如图4-6 选课信息页面 4-7 我的课表页面

图4-6 选课信息页面

图4-7 我的课表显示页面

图4-7中显示的选课项中,单击选课可选择该门功课,在课程信息页面中实现分页显示和模糊查询功能。

图4-8中显示学生用户所选择的课程信息。在删除选项中,点击删除可以退选课程。

代码如下:

<%@ page import="java.sql.*" %>

<%@ page import="Bean.*" %>

<head>

<style type="text/css">

A:link{color: 006699;font-size:9pt;text-decoration:none}

A:visited{color: #006699;font-size:9pt;text-decoration:none}

A:hover{color: #FF6600;font-size:9pt;text-decoration:underline}

</style>

<title></title>

<script language="JavaScript">

<!--

function del(id)

{

if (confirm("您确信要删除吗?") )

top.location="del.jsp?id="+id

}

</script>

</head>

<body background="../images/BKGRD9.jpg">

<center>

<br>

<p>我的课表</p>

<%//防止某些用户不进行登陆,直接想进入此页面

if (session.getAttribute("s1")==null){

response.sendRedirect("../index.jsp");

}%>

<%

useBean2 enroll=new useBean2();

enroll.useBean();

String id=(String)session.getAttribute("s1");

String strSQL="select * from course,sc where sc.num='"+id+"'and sc.cno=course.cno";

ResultSet rs= enroll.executeQuery(strSQL);

if(rs.next()){%><table gcolor="#CCCCFF" border="1" width="500" align="center">

<tr><td>取消选择</td><td>课程名</td><td>上课时间</td><td>上课地点</td><td>上课教师</td><td>学分</td></tr>

<%

while(rs.next())

{%>

<tr><td> <a href="del.jsp?id=<%=rs.getString("cno")%>">删除</a></td>

<td ><%=rs.getString("cname")%></td>

<td ><%=rs.getString("ctime")%></td>

<td ><%=rs.getString("cadress")%></td>

<td ><%=rs.getString("ctea")%></td>

<td ><%=rs.getShort("csc")%></td>

</tr>

<%} }

else out.print("您还没有选择任何课程!");

enroll.close();%>

</table>

<table width="650">

</table>

</center>

</body>

4.4.3 系统公告

用户可以浏览最近要文页面:news.jsp。

图4-8 浏览新闻页面

点击新闻标题的链接可以跳到新闻的具体内容页面:article.jsp

图4-9新闻内容页面

4.4.4 其他功能模块设计

用户退出系统时,用户点退出时,系统调用logout.jsp实现把用户信息从session中清除。

代码如下:

<%session.invalidate();

response.sendRedirect("index.jsp");

%>

4.5 管理员用户界面设计

管理员用户功能模块由四部分组成:用户管理、网上平台、系统公告和其他。

  • 用户管理:对学生、教师用户进行管理。实现添加、删除。同时查询学生和教师信息。管理员可以添加管理员用户。
  • 网上平台:管理员对课程进行管理,发布课程,以及修改和删除。对课程可以查询。
  • 系统公告:管理员对公告进行管理,对新闻进行发布,添加,修改。
  • 其他功能:退出系统

管理员和学生用户界面都同样用框架实现,管理员功能设计所有页面都放在admin的文件夹中,所以以下所提到的页面均在admin文件夹中。设置管理员界面框架结构主页index.htm。其中左框架中的功能导航页面为admin_left.jsp,右框架中的功能页面为admin_body.jsp。

4.5.1用户管理模块功能设计

对学生、教师用户进行管理。根据需要添加、删除学生、教师用户。管理员可以查询学生和教师信息,同时根据需要管理员可以添加管理员用户。管理员同样可以修改密码。

修改密码的实现和学生用户的相同 页面reset.jsp。管理员用户添加:addUser.jsp

添加学生信息:addstudent.jsp

查看学生信息:studentInfo.jsp

查看教师信息:teacherInfo.jsp

添加教师信息:addteacher.jsp

图4-10 学生用户添加

图4-11 学生信息查询

上图点删除时可以删除该学生,管理员要根据需要进行删除。

教师的添加和删除功能如同对学生的添加和删除。管理员要根据需要,可以删除该教师以及其信息。

4.5.2 网上平台模块功能设计

网上平台由两部分组成:查看选课信息和发布新课程

  • 查看选课信息:管理员用户查看所有选课信息,在查看时提供用户模糊查询,管理员可以根据需要查询要找的课程,模糊查询通过课程名方式查找。同时,管理员可以在课程列表中的修改选课信息栏和删除栏进行必要的改动,如修改课程信息或删除该课程。
  • 发布新课程:管理员可以根据教学大纲按时的发布课程,添加必要的选修课程,以供学生选课。

具体页面显示如下。

图4-12 查看选课信息

4.5.3 系统公告模块设计

系统公告模块设计分为两部分:浏览新闻、发布新闻

  • 浏览新闻:管理员可以对新闻浏览,同时多新闻做必要的修改和删除
  • 发布新闻:按需要发布新闻,告诉学生和教师用户最近动态

图4-13 浏览新闻页面

图4-14新闻修改页面

图4-15新闻发布页面

4.5.4 其他功能模块设计

管理员退出同学生信息模块设计相同,调用logout.jsp实现把用户信息从session中清除。

4.6 教师用户界面设计

教师用户功能模块也由四部分组成:个人信息、网上平台、系统公告和其他。

由于教师用户和学生用户功能模块很多类似,在下面只写出部分设计。

  • 个人信息:显示出用户的所有个人信息并提供密码修改功能
  • 网上平台:教师可以查看所有选择自己课程的学生信息,可以查询学生信息
  • 系统公告:用户可以浏览系统通知。
  • 其他功能:退出系统

教师和学生用户、管理员用户界面都同样用框架实现,教师功能设计所有页面都放在teacher的文件夹中,所以以下所提到的页面均在teacher文件夹中。设置管理员界面框架结构主页index.htm。其中左框架中的功能导航页面为teacher_left.jsp,右框架中的功能页面为teacher_body.jsp。

网上平台由两部分组成:查看学生信息和我的课表

  • 查看学生信息:教师可以查看所有选择自己课程的学生信息进行查看,以便于教师对学生的了解。教师可以根据实际情况查找某个学生,本系统提供了模糊查询,通过学生姓名进行查询。
  • 我的课表:教师可以查看自己的上课信息,便于教师用户了解自己的工作安排

图4-16查看学生列表

4.7 系统后台模块

该系统用到JavaBean 通过调用JavaBean实现连数据库

相关代码如下:

package Bean;

import java.sql.*;

import java.io.*;

import javax.servlet.*;

import javax.servlet.jsp.*;

import java.util.*;

import javax.servlet.http.*;

public class useBean2{

//ServletRequest request;

//ServletResponse response;

//JspWriter out;

String Sd="sun.jdbc.odbc.JdbcOdbcDriver"; //建立一个联接机

String Sc="jdbc:odbc:xxx"; //建立一个Odbc源

Connection con=null; //Connection对象

ResultSet rs=null; //建立一个记录集

public void useBean(){

try{

Class.forName(Sd); //用classforname方法加载驱动程序类

}catch(java.lang.ClassNotFoundException e){

//当没有发现这个加载这个类的时候抛出的异常

System.err.println(e); //执行系统的错误打印

}

}

public ResultSet executeQuery(String sql){ //可以执行添加删除等操作

try{

con=DriverManager.getConnection(Sc);

Statement stmt = con.createStatement(

ResultSet.TYPE_SCROLL_SENSITIVE,

ResultSet.CONCUR_READ_ONLY);

rs=stmt.executeQuery(sql);

}catch(SQLException er){

System.err.println(er.getMessage());

}

return rs;

}

public int executeUpdate(String sql){ //数据库的更新操作

int result=0;

try{

con=DriverManager.getConnection(Sc);

Statement stmt=con.createStatement();

result=stmt.executeUpdate(sql);

}catch(SQLException ex){

System.err.println(ex.getMessage());

}

return result;

}

public void close(){

try{

if(con!=null)

con.close();

}catch(Exception e){

System.out.print(e);

}try{

if(rs!=null)

rs.close();

}catch(Exception e){

System.out.println(e);

}

}

}

第六章 小结与谢辞

参考文献

[1] 孙卫琴, 李洪成.Tomcat与Java Web开发技术详解[M].电子工业出版社, 2005.8.

[2] 石志国, 薛为民, 董洁. JSP 应用教程[M]. 清华大学出版社, 北京交通大学社,

2004.9.

[3] 汪孝宜,刘中兵,徐佳晶. JSP数据库开发实例精粹[M]. 北京:电子工业出版社, 2005.1.

[4] Bruce Ecke. JAVA 编程思想(Thinking in Java)[M]. 机械工业出版社,2002.9.

[5] 耿祥义,张跃平. JSP实用教程[M]. 北京:清华大学出版社, 2003年.

  • 1
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值