jsp课程设计

阅读: 评论:0

2024年2月8日发(作者:)

jsp课程设计

《网络编程课程设计报告》

题目:网上选课系统的开发和设计

班级:软件工程 S091

1

目录

第一章 前言

1.1 开发背景……………………………………………………………………… 3

第二章 需求分析

2.1 需求分析……………………………………………………………………… 3

2.2 可行性分析…………………………………………………………………… 3

2.3系统配置需求 …………………………………………………………………

第三章 总体设计

3.1 项目规划……………………………………………………………………… 4

3.2 设计目标…………………………………………………………………… 4

3.3 系统相关技术介绍

3.3.1 JSP技术介绍 ………………………………………………………

3.3.2 SQL 2000 SERVE 数据库介绍 …………………………………………3.4 数据库分析设计

3.4.1 数据库需求分析 …………………………………………………… 5

3.4.2 数据库表的创建 …………………………………………………… 6

第四章 详细设计

4.1 主界面设计 ……………………………………………………4.2 界面头尾设计 ……………………………………………………4.3 登录界面 ……………………………………………………4.4学生用户界面设计 ……………………………………………………4.5 管理员用户界面设计 ……………………………………………………4.6 教师用户界面设计 ……………………………………………………4.7 设计中遇到的问题 ……………………………………………………第五章 参考文献 ……………………………………………………

2

4

5

5

6

6

6

7

10

10

10

11

第一章 前言

1.1 开发背景

Internet的发展给我们的教育更加现代化,现在网上信息管理是我们现在教育中的一个热点。现在,教师学生跟学校的之间的信息传播只在一指之间,时为我们创造方便快速的途径。在安全性和信息更新化方面存在有一定的不足,各现有系统资料单独建立,共享性差;在以管理者为主体的方式中,信息取舍依赖管理者对于信息的认知与喜好,较不容易掌握用户真正的需求,也因此无法完全满足用户的需求。目前国家的教育体制也正处在不断改革、创新的阶段,我国教育部门充分吸取国外优秀的教学模式,结合国内多年的办学经验,逐步探索出适合中国特色的教学形式,国家教育部面向各级各类学校开展了全面学分制改革。因此,教学管理软件应充分依托校园网,实现教学信息的集中管理、分散操作、信息共享,、使传统的教学管理朝数字化无纸化、智能化、综合化的方向发展,并为进一步实现完善的计算机教学文件管理系统和全校信息系统打下良好的基础。《学生网上选课系统》是高校教学管理系统的重要组成部分。熟悉教学管理工作的全部过程,从教务工作的实际出发,解决工作中关键性的难点问题,并充分利用计算机网络功能,实现教学工作全过程的计算机管理,帮助具体管理人员从复杂烦琐工作中解放出来。使得教学管理走向无纸化办公和规范化、现代化管理。由于 Internet 具有影响范围广,能够方便快捷的传递信息,具有近乎实时的交互性,本身又是一个巨大无比的信息库等诸多优点。学生网上选课系统,可以提高教师,学生和学校的管理效率。我们的目标是用学生网上选课系统实现最快对全校选修课程发布以及新闻发布,使教师和学生最快知道,创造现代化的学习环境。学生选课是大学的主要管理工作之一,涉及到校、系、师、生的诸多方面,随着教学体制的不断改革,学生选课时的制约因素比较复杂,工作量也很大,而且往往需要在较短的时间内完成。在这里,运用计算机辅助选课,即能实时地对大量选课数据进行检验和统计,十分方便地输出选课结果,同时也避免了人工处理时容易产生的错误。

第二章 需求分析

2.1 需求分析

我国不少高校都实行了学生自主选课系统,即把学习的自主权交给学生。在这里,学生选课时的制约因素比较复杂,工作量也很大,而且往往需要在较短的时间内完成。运用计算机辅助选课,开发自主选课系统,即能实时地对大量选课数据进行检验和统计,十分方便的输出结果,同时也避免了人工处理时产生的错误。可以提高管理工作的效率、提高信息的开放性、改善学生和教师对其最新信息查询的准确性。

通过对系统需求进行分析,我们确定系统中的三类用户:管理员、教师和学生。各类用户的具体描述如下:

(1) 管理员

描述:管理员维护整个系统,包括设置教师和学生的信息以及课程信息。

(2) 教师

描述:教师负责查询学生的基本信息,以及课程的基本信息。

(3) 学生

描述:学生负责查询课程基本信息,负责本身的选课。

2.2 可行性分析

1.经济性

3

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

2.技术性

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

3.操作性:

该系统操作方便,简单。

2.3 系统配置需求

硬件平台:

CPU:P4 1.8GHz以上;

内存:256MB以上。

软件平台:

操作系统:Windows 2000 Server;

数据库:SQL Server 2000;

开发工具包:JDK Version 1.6;

JSP 服务器:Tomcat 6.0;

第三章 总体设计

3.1 项目规划

基于Windows操作系统和Microsoft SQL Server 2000数据库,建立一个层结构清晰的学生选课系统,使用JSP编程,实现学生的选课功能、以及教师查询上课信息。

网上选课系统从功能上划分一共有3个主模块,主要实现教师信息管理、学生信息管理、课程信息管理,其中教师信息管理有教师姓名、教师工号、教师职称、教师所属系;学生信息管理有学生姓名、学生学号和学生所在系;课程信息管理有课程名称、学分、上课地点、上课时间、上课教师。管理员有权限去更改选课课程的信息。

身份登入:学生,教师,管理员三中身份登入(权限不同)

用户管理:管理员可以添加各种权限的用户,修改,和删除用户

课程管理:可以对颁布的课程表进行添加,删除,修改

3.2 设计目标

作者希望通过本网上选课系统的开发解决当前学生、教师群中因选修课而带来种种问题,并且尽可能的把系统开发放到数字教务、数字校园的大系统中以提高系统的各方面性能,增强系统的可扩展性和可移植性,增强系统的潜在价值。为日后高校改进、扩充、更新系统创造条件。

界面目标:

风格统一,色调温和,容易使用;

功能目标:

学生:登陆、修改、选课、查询

老师:登陆、修改、查看课程信息、查询学生信息

管理员:增加课程,删除课程,修改课程信息以及学生和教师的信息

性能目标:

4

有良好的可扩展性、容错性、易维护性、要求支持多人同步操作

技术要求:

网页下载速度快,具有较好的浏览兼容性

3.3 系统相关技术介绍

3.3.1 JSP技术介绍

JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。

JavaBean 是一种基于 Java 的软件组件。 JSP 对于在 Web 应用中集成 JavaBean 组件提供了完善的支持。这种支持不仅能缩短开发时间(可以直接利用经测试和可信任的已有组件,避免了重复开发),也为 JSP 应用带来了更多的可伸缩性。 JavaBean 组件可以用来执行复杂的计算任务,或负责与数据库的交互以及数据提取等。如果我们有三个 JavaBean ,它们分别具有显示新闻、股票价格、天气情况的功能,则创建包含所有这三种功能的 Web 页面只需要实例化这三个 Bean ,使用 HTML 表格将它们依次定位就可以了。 利用跨平台运行的 JavaBean 组件, JSP 为分离处理逻辑与显示样式提供了卓越的解决方案。

3.3.2 SQL SERVE 2000 数据库介绍

SQL(Structured Query Language),结构化查询语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。绝大多数流行的关系型数据库管理系统都采用了SQL语言标准。虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括Select, Insert, Update,

Delete, Create,以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作。

SQL Server 是一个关系数据库管理系统,它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了。Microsoft 将SQL Server

移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本;Sybase 则较专注于SQL Server在UNIX 操作系统上的应用。在本书中介绍的是Microsoft SQL Server

以后简称为SQL Server或MS SQL Server。

SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统的一个版本。该版本继承了SQL Server 7.0 版本的优点同时又比它增加了许多更先进的功能,具有使用方便,可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用。

3.4 数据库分析设计

3.4.1 数据库需求分析

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

用户分为管理员用户、教师用户和学生用户。

一个学生有多门课,一门课对应多个学生。

一个教师可以教授多门课程,一门课程可以有多个教授来教授。

5

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

管理员信息:用户ID、密码。

学生信息: 学生ID、姓名、密码、班级、所在院系、课程1、课程2、课程3

教师信息: 教师ID、姓名、密码

课程信息: 课程ID、名称、上课时间、上课地点、学分、上课教师

3.4.2 数据库表的创建

本系统含有以下四个数据课表:

管理员表(manager):用户ID(ID)、密码(password)

学生信息表(student):学生ID(ID)、姓名(name)、密码(password)、班级(grade)、所在院系(belongs)、课程1(course1)、课程2(course2)、课程3(course3)

课程信息表表(course):课程ID(ID)、名称(name)、上课时间(times)、上课地点(place)、学分(grade)、上课教师(teacher)

教师信息表表(teacher):教师ID(ID)、姓名(name)、密码(password)、所授课程(job)

第四章 详细设计和实现

本系统包括3个管理模块用户管理模块、课程管理模块、选课管理模块,用户模块分为3类用户,管理员、学生、老师。管理员实现课程管理、学生、教师以及课程的管理。本系统主要实现学生管理模块。

4.1 主界面设计

以下为主页面设计:

图1主界面

主界面包括两个部分:头部和中部。头部负责选择,中部负责显示。

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

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

4.2 界面头尾设计

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

4.3 登录界面

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

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

6

图2学生身份登录

其相应代码为:

学生登录

学生名:

id="name">

学生密码:

id="pwd">

4.4学生用户界面设计

学生用户功能模块由三部分组成:个人信息、课程信息和修改个人信息(选课)。

个人信息:显示出用户的所有个人信息并提供密码修改功能

课程信息:提供学生用户查看所有选课信息,用户可以查询自己想找的课程。当用户添加选课课程ID时,该课程就会添加到我的课表中,在数据库中选课表会添加一条记录。用户在我的课表中可以退选课程。

7

图3学生用户界面

图4 学生信息修改页面

学生选课功能模块使用了JAVABean技术,是数据库与页面之间的衔接不叫清晰,其主要代码如下:

package tom;

import .*;

public class UpdateStudent {

String tableName=""; //数据库表名

String id=""; //课程表的参数设置

String name=""; String belongs="";String password=""; String course1="";

String course2=""; String course3="";String result; //查询结果

public UpdateStudent(){

try{e("bcDriver");

}catch(ClassNotFoundException e){} }

public String getName() { return name; }

public void setName(String name) { = name; }

public String getBelongs() { return belongs; }

public void setBelongs(String belongs) { s = belongs; }

public String getPassword() { return password; }

public void setPassword(String password) { rd = password; }

public String getCourse1() { return course1; }

public void setCourse1(String course1) {

1 = course1; }

public String getCourse2() { return course2; }

public void setCourse2(String course2) {2 = course2; }

public String getCourse3() { return course3; }

public void setCourse3(String course3) {3 = course3; }

public void setTableName(String s){ ame=s; }

public String getTableName(){ return ame; }

public String getId() { return id; }

public void setId(String id) { = id; }

public String getResult(){

Connection con=null; Statement sql=null;

8

ResultSet rs=null; StringBuffer buffer=new StringBuffer();

try{ con=nection("jdbc:odbc:SelectCourse","","");

DatabaseMetaData metadata=aData();

ResultSet rs1=umns(null, null, tableName, null);

int counts=0; ("

");

("

");

while(()){

counts++;String name=ing("COLUMN_NAME");

("

"); }

("

");

sql=Statement();

String cd="select * from student";

String cd11="";

//result=new String("ID不能为空!!");

if(belongs!=""){

cd11="update student set belongs="+"'"+belongs+"'"+" "+"where id="+"'"+id+"'";

eUpdate(cd11); }

if(password!=""){

cd11="update student set password="+"'"+password+"'"+" "+"where

id="+"'"+id+"'";

eUpdate(cd11); }

if(course1!=""){

cd11="update student set course1="+"'"+course1+"'"+" "+"where

id="+"'"+id+"'";

eUpdate(cd11);

}

if(course2!=""){

cd11="update student set course2="+"'"+course2+"'"+" "+"where

id="+"'"+id+"'";

eUpdate(cd11);}

if(course3!=""){

cd11="update student set course3="+"'"+course3+"'"+" "+"where

id="+"'"+id+"'";

eUpdate(cd11); }

if(name!=""){

cd11="update student set name="+"'"+name+"'"+" "+"where

id="+"'"+id+"'"; eUpdate(cd11); }

if(cd11!="")

result=new String("成功!");

else{ result=new String("未更新!"); }

rs=eQuery(cd);

while(()){

("

");

for(int k=1;k<=counts;k++){

9

("

");

} ("

"); }

("

"+name+"
"+ing(k)+"
");

//result=new String(buffer);

//result=new String("添加成功!!");

(); return result;

}catch(SQLException e){

result=new String("你还没有完全填写!!请重新填写!!必选项为空或者ID重复"); return result; } } }

4.5 管理员用户界面设计

管理员用户功能模块由三部分组成:上部、中部和左部。

上部:用户可以在上面导航选择不同的功能菜单

中部:提供管理员用户查看的所有信息以及修改的所有信息

左部:设置导航键,供管理员用户选择不同的功能

其具体界面如下:

图5 管理员信息修改页面

该界面的实现同样是使用了JavaBean应用技术,其具体实施如学生用户管理。

4.6 教师用户界面设计

该层的实现同学生用户管理界面相似。

4.7 设计中遇到的问题

在开发中遇到了文字出现乱码,应该添加语句:<%@ page language=”java”

pageEncoding=”gbk” %>,开发中JavaBean出现无效的状态,由于修改了代码。JavaBean与源码中的调用出现不一致。

数据库的链接也时出现错误。

10

第五章 参考文献

[1] 武延军,黄飞跃. 精通JSP编程技术[M]. 北京:人民邮电出版社,2001:126-178.

[2] 柏亚军. JSP编程基础及应用实例集锦[M].北京:人民邮电出版社,2001:41-82.

[3] 清宏计算机工作室.JSP编程技巧[M].北京:机械工业出版社,2000 :32-39.

[4] 周影 .网络编程语言JSP实例教程[M].北京:电子工业出版社,2003:17-32.

11

jsp课程设计

本文发布于:2024-02-08 14:34:55,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170737409567744.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:学生   系统   用户
留言与评论(共有 0 条评论)
   
验证码:
排行榜

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23