java毕业设计——基于JSP+sqlserver的学生学籍管理系统设计与实现(毕业论文+程序源码)——学生学籍管理系统

基于JSP+sqlserver的学生学籍管理系统设计与实现(毕业论文+程序源码)

大家好,今天给大家介绍基于JSP+sqlserver的学生学籍管理系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。需要下载开题报告PPT模板及论文答辩PPT模板等的小伙伴,可以进入我的博客主页查看左侧最下面栏目中的自助下载方法哦

文章目录:

1、项目简介

  1. 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。
      
    2.本文采用JSP和MS SQL-Server等软件为开发工具,以Windows XP(或Windows )为开发平台,设计出一个学籍管理信息系统,对学生的信息、课程、成绩进行统一管理,便于查询、修改和删除。涉及到的主要内容有:体系结构规划、设计平台的搭建以及系统的设计。主要实现的功能模块有管理系统的功能介绍子系统、新生入学子系统、学生成绩管理子系统、在校学生管理子系统、离校学生管理子系统、各种信息查询子系统以及系统维护子系统。

  2. 该系统功能完善,可使高校的学籍管理系统从纯手工中解脱出来,实现高校学籍管理系统自动化、规范化、合理化、科学化,其实用性强,用户界面友好,有助于加快高校的信息传递和智能建设,并为高校整体实现信息化管理体系作好铺垫。


2、资源详情

项目难度:中等难度
适用场景:相关题目的毕业设计
配套论文字数:13477个字49页
包含内容:全套源码+配整论文
开题报告、论文答辩、课题报告等ppt模板推荐下载方式:
在这里插入图片描述


3、关键词

学生学籍管理; B/S;JSP;SQL SERVER ;JDBC-ODBC;

4、毕设简介

提示:以下为毕业论文的简略介绍,项目完整源码及完整毕业论文下载地址见文末。

第一章 绪论
1.1选题背景和意义
随着科学技术、管理方法的不断进步,传统的办公方式、方法和手段已经不能适应现代化管理的需要,作为培养高质量合格人才为宗旨的高等学校,总是走在科技的最前沿,学籍管理的计算机化已成为高校管理现代化、决策科学化的一个重要环节,是开创学籍管理工作新局面的必由之路。

学籍管理指学校对学生所获得的学籍资格进行管理。凡经过升学考试或按规定手续被正式录取的学生,入校办理注册手续后即取得该校学籍,它标志着学生取得了参加学习的资格。学籍是组织管理学生的客观依据,但传统的学籍管理模式和管理手段不仅大量地消耗人力、物力,同时,还存在诸多弊端,时常影响教学秩序,阻碍教学改革的深化,难以保证该项工作应具有的严肃性。

当前,学生学籍管理的弊端主要表现在两方面:第一,工作繁杂、工作量大、错误率高;第二,缺乏监督体系和控制手段:学籍管理的政策性很强,应该严格按照上级部门的有关政策和规定办事,然而,由于传统的学籍管理模式缺乏有效的监督措施,使有关部门的政策规定难以得到及时准确的贯彻执行,使学籍管理工作完全失去了应有的严肃性,给学校的人才培养质量带来了严重的影响,也给社会带来了很大的负面影响。

学生学籍管理系统要实现的目标是为该校提供全面的学生学籍管理的解决方案,以解决传统人工管理方式效率低、保密性差,不利于查找、更新和维护的问题,极大地提高学生学籍管理的效率,节约教育经费,以适应学校信息化建设的发展趋势。

具体目标如下:
1、提高学生学籍管理的效率,节约管理成本,增强学生管理的安全性。
2、满足教育管理单位、学生管理人员和学生的不同层次和不同方面的需要。
3、为学校将来的整体信息化建设提供必要的支持。
总之,通过该系统的建设来提高学校学生学籍管理效率,使得学校的发展能够适应当前的教育信息化建设的总体发展趋势。
因此,开发一个功能完善、操作简单、界面友好、有针对性的学籍管理系统对学校、乃至社会都是非常必要,非常有意义的。

1.2研究内容
系统由一台WEB服务器、SQL Server数据库服务器和众多客户端工作站构成,采用为Browse-Server-Database三级框架结构,使用JSP编程,实现学籍管理, 该系统有以下五个功能模块:
1、 系统管理员管理。该模块主要包括系统用户数据的录入、修改、删除等;
2、 学生信息管理。该模块主要包括以下几个子模块。
(1)浏览学生。可以查看学校总人数。
(2)修改信息。填写个人信息出错,可以通过该功能修改基本信息(可录入)。
(3)添加学生。管理员通过该功能对新生的录入。
(4)删除学生。对历届毕业生(已毕业)的信息,先进行保存档案,再删除。
3、 课程信息管理模块。
(1)显示所有课程:该页面可以进行修改和删除。
(2)添加课程:管理人员对新加的课程进行录入。
(3)课程成绩查询:学生页面直接点查看成绩,就能显示个人成绩。管理员通过输入学号查看成绩。
4、 选课情况管理。 该模块主要包括以下几个子模块:
(1)显示选课:学生直接通过查看页面添加选修课(最多只能选3门课)。管理员通过查看选课可以进行修改和删除。
(2)查看选课:学生进入个人页面直接可以查看选修的课程。管理员通过输入选修课的课程号来查看选课情况。
(3)添加选修课:管理员对新添加的课进行录入。

1.3系统开发技术
本系统的设计综合应用了B/S体系结构、SQL Server 、JSP、ODBC、JDBC等技术。
由于客户服务器两层结构存在灵活性差、升级困难、维护工作量大等缺陷,已较难适应当前信息技术与网络技术发展的需要。随着WEB技术的日益成熟,Browse/Server(简称B/S)结构已成为取代Client/Server(简称C/S)结构的一种全新技术。因此该结构在管理信息系统开发领域中获得飞速发展,成为应用软件研制中一种流行的体系结构。

1.3.1 B/S体系结构
在B/S体系结构系统中,用户通过浏览器向分布在网络上的许多服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。B/S结构简化了客户机的工作,客户机上只需配置少量的客户端软件。服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。浏览器发出请求,而其余如数据请求、加工、结果返回以及动态网页生成等工作全部由Web Server完成。实际上B/S体系结构是把二层C/S结构的事务处理逻辑模块从客户机的任务中分离出来,由Web服务器单独组成一层来负担其任务,这样客户机的压力减轻了,把负荷分配给了Web服务器。这种三层体系结构如图1所示。
在这里插入图片描述

图1.3.1 三层体系结构
采用该结构软件的优势在于:
(1)无须开发客户端软件,维护和升级方便;
(2)可跨平台操作,任何一台机器只要装有WWW浏览器软件,均可作为客户机来访问系统;
(3)具有良好的开放性和可扩充性;
(4)可采用防火墙技术来保证系统的安全性,有效地适应了当前用户对管理信息系统的新需求。

这种三层结构层与层之间相互独立,任何一层的改变不影响其他层的功能。
三层B/S结构将应用的三个部分明确的分开:表示部分、应用逻辑部分、数据访问部分。这三个部分在逻辑上独立的分开,分别加以实现,称之为:客户端、应用服务器、数据库服务器。而在客户端和应用服务器之间加入一个WEB服务器,就形成了一种特殊的B/S结构:Browser/Server,只在客户端安装浏览器软件即可。客户端使用Internet Explore时,就可以让Internet Explore变成为能够处理数据的应用系统。
由于这种模式是提供一个跨平台的、简单一致的应用环境,实现了开发系统与应用系统的分离,因此避免了为多重不同的操作系统开发同一应用系统的重复操作,便于用户群的扩展、变化以及应用系统的管理。
因此该结构在管理信息系统开发领域中获得飞速发展,成为应用软件开发中一种流行的体系结构.所以在开发本系统时采用这种模式。

1.3.2 SQL Server
SQL Server 具有较好的可伸缩性和可靠性,提供了以Web标准为基础的扩展数据库编程功能,可以满足电子商务和企业应用程序的要求。SQL Server 支持XML和Internet标准,具有基于Web的分析能力,允许使用内置的存储过程以XML格式存储、更新、删除、检索数据。
SQL Server 能提供超大型系统所需的数据库服务。大型服务器可能有成千上万的用户同时连接到SQL Server 的情况,SQL Server 为这些环境提供了全面的保护,具有防止问题发生的安全措施,例如,可以防止多个用户试图同时更新相同的数据。SQL Server 还在多个用户之间有效地分配可用资源,比如内存、网络带宽和磁盘I/O等。
SQL Server 不仅能作为一个功能强大的数据库服务器有效地工作,而且数据库引擎也用在需要在客户端本地存储独立数据库的应用程序中。SQL Server 可以动态地将自身配置成能有效地使用客户端桌面或膝上型电脑中的可用资源,而不需要为每个客户端专设一个数据库管理员。应用程序供应商还可以将SQL Server 作为应用程序的数据存储组件嵌入到应用程序中。SQL Server在网络组件的顶部添加了服务器特有的中介组件,诸如开放式数据库连接(ODBC)后能使不同客户机进行相互连接,它可处理基于Internet的应用程序,帮助用户把SQL Server数据库信息集成到Web页面。

1.3.3 JSP技术
JSP(Java Server Pages)是Sun公司推出的一种动态网页技术。JSP技术是以Java语言作为脚本语言的。作为采用Java技术家族的一部分,JSP技术能够支持高度复杂的基于Web的应用。
JSP通过以下几个方面加以实现的:
省略

1.3.4 ODBC数据访问接口
开放数据库互连(Open Database Connectivity,ODBC)是Microsoft公司开发的一套开发数据库系统应用程序接口规范,它支持应用程序以标准的ODBC函数和SQL语句操作各种不同的数据库。在这一实现过程中,ODBC驱动程序起了关键作用,简单地说,ODBC驱动程序相当于一个转换开关,它负责将应用程序发送来的标准SQL语句传递给各种数据库驱动程序处理,再将处理结构送回使用程序。于是,应用程序开发者只须面对统一的ODBC数据源,而不必针对各种数据库进行不同的设置,这样的程序具备更好的适用性和可移植性,甚至可以访问多种不同的数据库,如图2所示。
在这里插入图片描述

图1.3.2 ODBC 工作原理

1.3.5 JDBC数据访问接口
为支持Java程序的数据库操作功能,Java语言采用了专门的Java数据库编程接口(Java Database Connecivity,JDBC),用于在Java程序中实现数据库操作功能并简化操作过程。JDBC支持基本SQL语句,提供多样化的数据库连接方式,为各种不同的数据库提供统一的操作界面。
JDBC工作原理如图3所示。
在这里插入图片描述

图1.3.3 JDBC工作原理
1.3.6 JavaScript
JavaScript是一种基于对象(Object)和事件驱动(Event Driven)并具有安全性能的脚本语言。使用它的目的是与HTML超文本标记语言、Java 脚本语言(Java小程序)一起实现在一个Web页面中链接多个对象,与Web客户交互作用。从而可以开发客户端的应用程序等。它是通过嵌入或调入在标准的HTML语言中实现的。它的出现弥补了HTML语言的缺陷,它是Java与HTML折衷的选择,具有以下几个基本特点:
省略

第二章 系统设计
2.1需求分析
本系统主要是针对各个高校的学生学籍进行管理,系统满足以下几点要求:
 系统安全性。由于此系统中的操作都是由用户操作的,所以对于用户的权限设置比较严格。对于数据库,设置了不同用户的权限,不同权限进入不同的界面,为了防止数据的并发现象的出现,数据的编辑必须由合法用户来操作,并且对于管理员来说,只允许对自己管理的信息进行编辑,无权对其他用户管理的信息进行编辑。
 系统内容的全面性。学生学籍管理系统不仅是对学籍的一些基本管理,而且还对学籍的维修、删除各方面都有很好的管理,并且不同的管理权限可操作的内容也是不同的,因此,本系统能够很好的满足管理人员的需要,使个人用户可以快捷、简便、安全地使用本系统。
 可扩展性。站点的数据承载量、功能模块的单个或整体调整都可以满足变化的需要,这种适应性称为可扩展性。学籍管理系统的可扩展性,体现在不同用户需要处理不同类型的数据、数据与用户之间进行交互、数据要符合个人用户的使用需求、多表查询系统化、避免性能下降等方面。
 易维护性。本系统采用B/S结构,系统的升级只需要在服务器端完成,更新软件系统的数据库、文件也只需要更新服务器端即可。在进行系统的维护时,只需要远程登录服务器系统,减少了维护系统的成本和周期。

2.1.1运行环境
硬件配置:
CPU:2.26GHZ;
内存:256M;
硬盘:80G;
软件配置:
操作系统:Windows ;
数据库:SQL Server ;
JSP服务器:Tomcat;
开发工具:JBuilder X。

2.2系统总体设计
2.2.1 系统目标设计
学籍管理信息系统以计算机为工具,把学籍管理系统更完善,通过对教务管理所需的信息管理,减轻行政人员的工作负担,使教学办公室对学生档案的管理更方便,把管理人员从繁琐的数据计算处理中解脱出来,使其有更多的精力从事教务管理政策的研究实施,教学计划的制定执行和教学质量的监督检查,从而全面提高教学质量。计算机的资源是受到限制的,因此要充分利用JSP的功能,设计出功能强大的软件,同时要尽可能减少对系统资源的占用,同时对本系统要求有良好的保密
2.2.2 系统设计思想
学籍管理系统主要实现的是对学生的学籍、选修课、基础课程和成绩的管理。首先,对用户设置不同的权限,根据不同的权限进入不同的页面。其次,对于所输入的用户名和密码进行判断。最后,成功登录的话:1、如果是学生页面,登录到个人管理页面,其中包括学籍维护、选修课表、所选课程、成绩查询、密码修改。2、如果是管理员页面,管理员可以对出错学生信息进行修改,对选修课程的添加、修改、删除,以及对基础课程的添加、修改、删除。也可以通过查看成绩,显示所有学生成绩,或所有选修了该课程的学生。
2.2.3 系统功能描述
本系统功能主要划分学生操作管理、管理员操作管理2大模块。其中学生操作模块包括学籍维护、选课管理、成绩查询、修改密码这几个小模块。管理员操作包括后台学生信息管理、选修课程信息管理、基础课程信息管理、成绩这几个小模块。系统根据登录用户的身份,进入不同的界面,进行不同的功能操作。系统的2个大模块划分如图2.1所示。
在这里插入图片描述

图2.2.1系统的2大模块划分图
1、 学生操作管理包括以下几个模块,如下图所示:
在这里插入图片描述

图2.2.2学生操作管理系统
在学生操作管理系统中,方便学生在网上查询个人信息、成绩、查看公告以及维护个人信息。下面具体介绍每个子功能模块。
(1) 学籍维护:该模块包括不可录入的基本信息和可录入的基本信息,学生可以核对不可录入的信息,对于有错的信息可以通过管理员来修改。其它可录入的信息,学生可以进行修改,提交后数据库更新相关信息。此模块完成的就是学生个人信息的查询、更新这些维护管理操作。
(2) 选课管理:该模块又包括选修课表和所选课列表。选修课表列出了所有开设的课程,同时列出授课教师,上课时间,教室等这些数据项信息。学生点课程列表前面的添加,就可以添加自己喜欢的课程,每位学生最多只能选3门课,超过3门或者重复选课都会弹出错误提示框,学生如果想换课程,可单击所选课程前面的删除,重新选择课程。
(3) 成绩管理:添加此模块,可以方便学生在网上直接查看自己的成绩,不用特意到学校去咨询,或等待邮寄信。这样不紧方便了学生,也减轻了教务处的负担,也正是该系统方便、快捷、及时的特点。
(4) 修改密码:由于一开始,所有学生的密码都是统一的,为了维护个人信息,每个学生可以通过该功能进行密码修改。
2、 管理员操作管理包括下面几个子模块,如下图所示:
在这里插入图片描述

图2.2.3管理员操作管理系统
在管理员操作管理中,管理员对学生信息的修改、添加、删除,对课程的修改、添加、删除。下面具体介绍各个功能模块。
(1) 学生信息管理:在该页面,管理员可以进行添加、修改、删除,具体为对出错学生信息的修改,对新生的录入,对已经毕业了的学生,删除有关他们的相关信息。
(2) 选修课程管理:管理员根据每个学期的变动,添加或删除相应的课程,也可以对出错信息进行修改。在该模块,管理员还可以查看学生选课情况,输入学号查看该学生选课情况,输入课程号查看选修了该课程的所有学生。
(3) 基础课程管理:根据每个学期所学课程的不同,管理员可以对课程进行添加、修改、删除操作。
(4) 查看成绩管理:可以精确查找学生成绩,也可以通过输入课程,查看该课程所有学生的成绩,以便进行学生的排名。

通过上面的介绍,基本确定了系统总功能结构图,如下图所示:
在这里插入图片描述

图2.2.4 学生学籍管理系统总功能结构图

2.2.4系统用例图
用例图确定系统中所包含的参与者、用例和两者之间的对应关系,用例图描述的是关于系统功能的一个概述。系统分为学生登录和管理员登录,下面分别对其进行用例分析。
1、学生用例分析以及下图
登录:学生登录后才能进行关于本人信息等的一些操作。
密码修改:每位学生的初始密码都是相同的,因此学生登录后要修改系统登录密码。
任选课表:网上选修自己感兴趣的课程。
查看已选课程:查看自己选修的课程,并可以退选。
学籍维护:网上维护和管理自己的信息,当信息有变更时可以及时的更新。
成绩查询:及时的了解到自己每学期的学习成绩。

在这里插入图片描述

图2.2.5学生用例图

2、管理员用例图以及下图
登录:输入正确的用户ID和密码后才可以登录到后台进行管理操作。
密码修改:管理员修改自己的密码。
学生信息管理:对学生信息进行修改、删除操作。
学生信息添加:对新生的录入。
课程列表管理:增添、修改、删除课程。
选课学生查询:查询每门课程被选修的具体的学生信息。
学生成绩管理:查看个人成绩,也可查看该课程所有学生成绩。
在这里插入图片描述

图2.2.6管理员用例图

2.2.5系统UML活动图

在这里插入图片描述

图2.2.7系统UML活动图

第三章 数据库设计
在本系统中使用的是SQL Server数据库管理系统。本系统使用的数据库名为tong,下面具体讲解数据库中各数据表的创建和逻辑结构。
3.1总体表设计
该系统中共需要创建6个数据表,依次是:

  1. admin表:记录管理人员信息
  2. student表 :记录学生信息
  3. chengji表:记录基础课程信息
  4. kecheng表:记录选课信息
  5. 成绩关联表: 记录学生基础课程成绩
  6. 选课关联表:记录学生选课信息
    3.2 数据库表的结构
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

3.3 实体及ER图
3.3.1 登录管理
实体介绍
本系统中的实体共有4 个,分别为:
实体1: 学生(姓名stu_name,学号stu_id,密码stu_password,性别sex,专业dept,民族mz,政治面貌zzmm,曾用名cym,身份证sfz,出身日期age,籍贯jg,健康状况jkzk,入学年份rxnf,家庭地址jtdz,家庭电话jtdh,邮政编码yzbm,联系方式lxfs,Email email,备注bz); 关键字为:学号stu_id
实体2:选修课(课程号kch,课程名kcm,任课教师rkjs,星期几xqj,时间sj,上课教室skjs); 关键字为:课程号kch
实体3:基础课(学期号xqh,课程号kch,课程名kcm,学分xf,主讲教师zjjs) 关键字为:课程号kch
实体4:成绩(id,学号stu_id,课程号kch,成绩,重修成绩);关键字为:id
3.3.2实体的ER图
实体1的ER图:
在这里插入图片描述

图3.3.1实体的ER图

实体2的ER图:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.4 数据库表的关系图
在学籍产管理系统中,涉及到5个数据表的操作,其中有些表会与多个表有关联,但结构比较明晰,各表的关系如下图:
在这里插入图片描述

图3.4.1 关系图
3.5 数据库表的视图
系统通过建立视图来进行查询,如下是查看的视图:
在这里插入图片描述

图3.5.1 视图

第四章 系统具体实现
4.1 关键应用
4.1.1数据库连接
JDBC是Java数据库连接(Java Data Base Connectivity)技术的简称,是为各种常用的数据库提供无缝连接的技术。JDBC定义了Java语言同各种SQL数据之间的应用程序设计接口(API),提高了软件的通用性。
JDBC的关键技术是数据库连接驱动程序,针对这点大量的数据库厂商和第三方开发商支持Java的JDBC的标准,并开发了不同的数据库JDBC驱动程序。这些驱动程序可以分成四种:JDBC-ODBC Bridge驱动程序、JDBC Native Bridge驱动程序、JDBC-Network Bridge驱动程序、Pure Java JDBC Driver。
其中,我采用JDBC-ODBC Bridge驱动程序来连接数据库,步骤如下:
1、将SQL Server 改为“SQL Server和Windows”方式登录;
2、建立访问系统dsn112数据库用户;
3、建立ODBC数据源(系统数据源名称为dsn112);
4、编写JSP程序连接数据库代码:

 package proj112;
import java.io.*;
//import javax.servlet.http.*;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class dbconn {
               //建立一个联接机
          String url="jdbc:odbc:dsn112";                      //建立一个Odbc源
          Connection con=null;                               //Connection对象
          ResultSet rs=null;           //建立一个记录集
          PreparedStatement prepstmt = null;
          String userName = "sa";
          String password = "";
          public dbconn(){
                  try{
                          Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");                  //用classforname方法加载驱动程序类
                  }catch(java.lang.ClassNotFoundException e){ //当没有发现这个加载这个类的时候抛出的异常
                          System.err.println(e);              //执行系统的错误打印
                  }
          }
          public ResultSet executeQuery(String sql){         //可以执行添加删等操作
                  try{
                       con=DriverManager.getConnection(url,userName,password);
                          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(url,userName,password);
                          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);
                  }
          }
          public PreparedStatement preparedstatements(String sql) {
                  try{
                  con=DriverManager.getConnection(url,userName,password);
                  prepstmt = con.prepareStatement(sql);
                  //PreparedStatement prepstmt = null;
          }catch(SQLException ex){
                  System.err.println(ex.getMessage());
          }
          return prepstmt;
          }
/*          public static void main(String[] args) {
                try {
                        ConnDB db = new ConnDB();
                        //db.executeQuery("select * from student_info";
                        ResultSet rs = db.executeQuery("select * from student_info");
                        while(rs.next()) {
                                System.out.println(rs.getShort(1));
                                System.out.println(rs.getString(2));
                        }
                        //System.out.println("连接数据库成功!");
                }catch(Exception e) {
                        e.printStackTrace();
                }
        }*/
}

4.2 登录管理
在这里插入图片描述

图4.2.1 系统登录界面

说明:用户只需要填写登录帐号和密码,后台会判断用户的权限从而进入不同的操作页面。
当输入的用户名或密码有错,显示提示框,如下图所示:

在这里插入图片描述

图 4.2.2 用户名或错误界面
4.3 菜单界面
登录用户设置了两个权限(系统管理员、学生用户),不同的权限进入不同的操作界面。下面是系统管理员的操作界面,分为三个功能模块:
1、学生模块:该模块包括三个子模块,管理员可以对新生的录入,对在校学生信息的修改,以及对毕业学生的删除。要精确查找学生,可以输入学号,查找到相应学生信息。在查看成绩这一子模块,你可以输入学号,查看该学生所有课程成绩,或输入课程号,查看该课程所有学生成绩情况。
2、课程模块:该模块包括五个子模块。在查看选修课表页面,管理员可以对课程进行修改,对每个学期所选课程的不同,进行添加、删除操作。在选课情况页面,进行两个操作,输入学号可以查看该学生选课情况;输入课程号,可以查看选修了该课程的所有学生,以便进行统计。基础课表页面显示所有课程信息,根据每个学期课程的变动,进行添加、修改、删除操作。
3、帮助中心:包含两个子模块。管理员可以对个人登陆的密码进行修改,或退出该管理员页面。
在这里插入图片描述

图4.3.1 系统管理员操作页面

4.4 系统管理
4.4.1学生信息显示页面
在此页面既可以查询到学校所有学生信息,也可以在此编辑学生的一些信息,比如增加、修改、删除学生信息。
在这里插入图片描述

图4.4.1 管理员管理页面
以下为修改代码:change.jsp

<%@ page contentType="text/html; charset=GBK" %>
<%@ page import="java.sql.*" %>
<%@ page language="java" %>
<%@ page import="java.util.*" %>
<%@ page import="proj112.*" %>
<jsp:useBean id="a" scope="page" class="proj112.dbconn"/>
  <% request.setCharacterEncoding("GBK"); %>
<FORM Action="edit.jsp" Method="post" name="edit">
<table align="center" border="2" width="100%" bordercolorlight="#CC99FF" cellpadding="2" bordercolordark="#FFFFFF" cellspacing="2">
  <%
  String id2=request.getParameter("id");
  //out.print(id);
  String sql="select * from student where stu_id='"+id2+"'";
  ResultSet rs = a.executeQuery(sql);
  while(rs.next()) { %>
  <tr> <td align=center colspan=2><font color=blue size=5><b>修改学生信息</font></td>
<tr align=center><td>姓名:</td><td><INPUT TYPE="text" NAME="stu_name" value=<%=rs.getString(1)%>></td>`</tr></tr>
  <tr align=center>
	  <td>学号:</td><td><INPUT TYPE="text" NAME="stu_id" value=<%=rs.getString(2)%>></td>
	 </tr>
	<tr align=center><td>
	  性别:</td><td><INPUT TYPE="text" NAME="sex" value=<%=rs.getString(4)%>></td>
	  </tr>
	  <tr align=center><td>
	  专业:</td><td><INPUT TYPE="text" NAME="dept" value=<%=rs.getString(5)%>></td>
	  </tr>
	  <tr align=center><td>
	  民族:</td><td><INPUT TYPE="text" NAME="mz" value=<%=rs.getString(6)%>></td>
	  </tr>
	  <tr align=center><td>
	  政治面貌:</td><td><INPUT TYPE="text" NAME="zzmm" value=<%=rs.getString(7)%>></td>
	  </tr>
  <% } rs.close();%>
<tr><td align=center  colspan=2>
<INPUT align=center TYPE="submit" value="提交"> </td>
</tr></table></form>
edit.jsp
<body>
  <% request.setCharacterEncoding("gb2312"); %>
  <%
String id2=request.getParameter("stu_id");
String stu_name = request.getParameter("stu_name");
String stu_id = request.getParameter("stu_id");
String sex = request.getParameter("sex");
String dept = request.getParameter("dept");
String mz = request.getParameter("mz");
String zzmm = request.getParameter("zzmm");
//int age2 = Integer.parseInt()
String sql = "update student set stu_name='"+stu_name+"', stu_id='"+stu_id+"', sex='"+sex+"',dept='"+dept+"',mz='"+mz+"', zzmm='"+zzmm+"' where stu_id='"+id2+"'";
//rs2.close();
a.executeUpdate(sql);
response.sendRedirect("std.jsp");
%>
</body>

4.4.2学生信息修改页面
管理员可以在此删除用户、添加用户,也可以修改用户的一些信息,点击修改按钮后将进入到新页面进行信息修改。
在这里插入图片描述

图4.4.2 修改学生信息界面
4.4.3添加学生信息页面
管理员在此可以添加、修改、删除,点击添加按钮后将进入到添加页面。
在这里插入图片描述

图 4.4.3 添加学生页面
4.4.4成绩查看页面
可以输入学号或课程号,进行查看。
在这里插入图片描述

图4.4.4 输入学号查看成绩

下图是显示学号为7000803112的学生成绩表页面:在此页面可以修改学生成绩和重修成绩。
在这里插入图片描述

图4.4.5 学号为7000803112学生成绩页面

下图是输入课程号02的成绩表:
在这里插入图片描述

图4.4.6 课程号02的成绩表
4.5课程管理
4.5.1选修课表显示
下图是选修课表页面:将所有选修课表显示出来,可以执行修改、删除操作。如下图所示:
在这里插入图片描述

图4.5.1 选修课表页面

4.5.2选课情况页面
该页面包含两种查看方式:一种是输入学号查看个人选课情况;另一种是输入课程号查看选修该课学生。
在这里插入图片描述

图4.5.3 学生选课情况页面
下图为输入学号显示的页面:
在这里插入图片描述

图4.5.4 输入学号显示的页面
下图为输入课程号显示的页面:
在这里插入图片描述

图4.5.5 输入课程号显示的页面
4.6 学生管理页面
该页面包括:系统说明、个人信息、公告查看、成绩查询、选修课程、修改密码、所选课程、修改信息、学校主页、退出系统这十个子模块。
下图为学生管理界面:

在这里插入图片描述

图 4.6.1 学生管理页面

4.6.1学籍维护页面
在该页面你可以核对基本信息(不可录入)这一块,发现信息有错,可以通过管理员进行修改。下面的基本信息,可以填写完整,也可以进行修改。
在这里插入图片描述

图4.6.2 学籍维护页面

4.6.2成绩查看页面
在这里插入图片描述

图4.6.3 成绩表页面
4.6.3学生选修课表页面
该页面显示所有选修课,学生可以根据个人爱好,选择课程,只要点前面的添加就选择了该课程,但每个人最多只能选3门课程。如果你已经选了3门课再选的话会出现提示框。
在这里插入图片描述

图4.6.4 选修课表页面
如果你已经选了3门课,再点添加就会出现提示框,如下图所示:
在这里插入图片描述

图 4.6.5 你只能选3门课提示框页面
或者你已经选了这门课,再点会出现提示框,如下图所示:
在这里插入图片描述

图4.6.6 你已选了这门课提示框在这里插入图片描述

4.6.4所选的课程
显示该学生选修的课程,如果有自己误选的课程,可以点前面的删除,就可以删掉。
在这里插入图片描述

图 4.6.7 删除页面
4.6.5修改个人密码
在这里插入图片描述

图4.6.8 密码修改页面
以上代码部分为了节省空间,有些是删掉了JavaScript对话框代码,但是在系统实现代码中是有写入的。
这样,整个学籍管理系统的所有功能全部都实现了。

第五章 全文总结
经过测试,系统能够很好的运行,通过运用此管理系统,功能模块也能够达到老师所指定的要求。系统可以实现学生信息的集中管理、分散操作、检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事劳资管理的效率,也是高校的科学化、正规化管理,与世界接轨的重要条件。
通过系统的设计,本人感触最深的是加深了对软件开发过程的理解,熟悉了利用JSP实现各种实用的数据库型软件的开发,以及了解了教务管理的一些流程,也更加深入理解了MIS设计中常见问题和其设计的意义。本文在详细分析了学生学籍管理的各功能模块基础上,设计并实现了学生学籍管理系统的简易版本。论文的主要工作包括以下几个方面:
1. 详细地分析和总结了学生学籍管理的需求,并确定了学生学籍管理系统实现的初步方案。
2.分析了系统实现的关键技术原理,和具体描述了各个功能模块,并用图示表示出了系统功能结构图,使得更容易了解本系统。
3.设计并实现了学籍管理系统的逻辑模型,并基于SQL Server数据库实现了学生学籍管理系统数据的物理模型。
4.采用JSP实现了学生学籍管理系统的初步版本。
经过两个多月的设计和开发,学生学籍管理系统基本开发完毕,但是由于毕业设计时间较短,所以该系统还有许多不尽如人意的地方,比如班级管理,系统出错处理等一些问题。在我的进一步工作中,我将对这些问题进行完善。

致 谢
省略

参考文献:
[1]朱俊炎 WEB开发技术[M] 2006.6
[2]岑玲 基于Browser/Server结构的办公自动化系统[M]. 计算机与现代化 2001.2
[3]丁宝康、董健全 数据库实用教程[M]. 清华大学出版社2003.6
[4]石志国 、薛为民 JSP应用教程[M]. 清华大学出版社;北京交通大学出版社2004.10
[5]胡艳洁 HTML标准教程[M]. 中国青年出版社 2004.9
[6]王明福 基于三层C/S结构办公自动化系统的研究与实践[M]. 电子计算机, 2001.6


5、资源下载

本项目源码及完整论文如下,有需要的朋友可以点击进行下载。如果链接失效可点击下方卡片扫码自助下载。

序号毕业设计全套资源(点击下载)
本项目源码基于JSP+sqlserver的学生学籍管理系统设计与实现(源码+文档)_jsp_BS架构_学生学籍管理系统.zip
  • 3
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

毕业设计方案专家

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值