JSP课设:学生信息管理系统(附源码+调试)

news2025/4/12 7:46:04

JSP学生信息管理系统

(1)登录模块:本系统提供用户和管理员两种登陆方式,用户通过输入账号和密码,进行登录。
(2)注册模块:注册者输入账号和密码,并选择对应的权限级别,来完成一个账号的登录。
(3)学生模块院系信息管理:查看所有院系信息;班级信息管理:查看所有班级信息;学生信息管理:查看所有学生;课程信息管理:查看所有课程,查询课程平均分,查询课程不及格率,查询课程排名情况;学生成绩管理:查看全部学生课程成绩。
(4)管理员模块用户信息管理:查看所有用户,新增用户信息,删除指定用户,修改用户信息;院系信息管理:查看所有院系,新增院系信息,删除指定院系,修改院系信息;班级信息管理:查看所有班级,新增班级信息,删除指定班级,修改班级信息;学生信息管理系统:查看所有学生信息,新增学生信息,删除指定学生,修改学生信息;课程信息管理:查看所有课程,新增课程信息,删除指定课程,修改课程信息,查询课程平均分,查询课程不及格率,查询课程排名情况;学生成绩管理:查看全部学生成绩,新增学生成绩记录、删除指定学生成绩记录,修改学生成绩记录。

代码链接:https://pan.baidu.com/s/15EBudlmILzAwuDFuXT9KTQ
提取码:hd7b

系统截图
1、系统首页
在这里插入图片描述
2、注册界面
在这里插入图片描述
3、学生界面
在这里插入图片描述
4、管理员界面
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
核心代码
1、数据库连接

package utils;

import java.sql.DriverManager;
import java.sql.SQLException;

import com.mysql.jdbc.Connection;

public class DBUtils {
	
    /**
     * 获取数据库连接
     * @return Connection对象
     */
    public static Connection getConnection(){
    	String dbUserName = "root";
    	String dbUserPasswd = "123456";
    	String dbURL = "jdbc:mysql://localhost:3306/studentinfomanagement?"
    	            + "user="+dbUserName+"&password="+dbUserPasswd+"&useUnicode=true&characterEncoding=UTF8";
    	Connection conn = null;
    	try {
    		Class.forName("com.mysql.jdbc.Driver");
    		conn = (Connection) DriverManager.getConnection(dbURL,dbUserName,dbUserPasswd);
    	} catch (ClassNotFoundException | SQLException e) {
    		e.printStackTrace();
    	} 
    	return conn;
    }
    
    /**
     * 关闭数据库连接
     * @param conn Connection对象
     */
    public static void closeConnection(Connection conn) {
		//判断conn是否为空
    	if(conn != null){
    		try {
				conn.close();//关闭数据库连接
			} catch (SQLException e) {
				// TODO: handle exception
				e.printStackTrace();
			}
    	}
	}
}

2、登录界

<!DOCTYPE HTML>
<html lang="zh">
	<head>
		<meta charset="UTF-8">
		<title>学生信息管理系统</title>
		<link rel="stylesheet" type="text/css" href="css/login&register.css">
		<link rel="icon" type="image/x-ico" href="images/stu.ico">
	</head>
	<body>
		<!--Header-->
		<header>
			<nav>
				<ul>
					<a href="#"><li>首页</li></a>
					<a href="#"><li>关于系统</li></a>
					<a href="login.html"><li>登录</li></a>
					<a href="register.html"><li>注册</li></a>
				</ul>
			</nav>
		</header>
			
		<!--Main-->
		<main>
			<div class="container">
				<img class="login_bg" src="images/login.png">
				<form  class="form" action="LoginServlet" method="post">
					<h3>学生信息管理系统</h3>
					<p>登录</p>
					<input type="text" autofocus="autofocus" name="username" value placeholder="用户名" required="required">
					<input type="password" name="password" value placeholder="密码" required="required">
					<input id="submit" type="submit" name="submit" value="登录">
				</form>
			</div>
		</main>

		<!--Footer-->
		<footer>
			<div class="info">
				<ul>
					<a href="#"><li>学生信息管理系统</li></a>
					<a href="#"><li>帮助与反馈</li></a>
					<a href="#"><li>联系我们</li></a>
				</ul>
			</div>
			<div class="copyright">
				&copy; Copyright. All rights reserved. Design by <a href="http://www.github.com/Soarkey/">Soarkey</a>
			</div>
		</footer>
	</body>
</html>

3、用户界面

<%@page import="model.User"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE HTML>
<html lang="zh">
<head>
	<meta charset="UTF-8">
	<title>用户操作界面</title>
	<link rel="stylesheet" type="text/css" href="css/user&admin.css">
	<link rel="icon" type="image/x-ico" href="images/stu.ico">
	
</head>
	
<body>
	<%
		//获取登录成功的用户信息
		User user = (User) session.getAttribute("user");
		//判断用户是否登录
		if(user != null){
	%>
	<header>
		<div class="title">
			<span>用户操作界面</span>
		</div>
		<nav>
			<div class="userinfo">
				<ul>
					<li><%=user.getUsername() %></li>
					<li><%=user.getLevel() %></li>
					<li><a href="UserExitServlet">退出登录</a></li>
					<li><a href="login.html">返回首页</a></li>
				</ul>
			</div>
		</nav>
	</header>
	
	<main>
		<%
		}else{
			response.sendRedirect("login.html");
		}
		%>
		<div class="container">
			<div class="select">
				<h3>请选择操作</h3>
				<ul id="accordion" class="accordion">
					<li>
						<div class="link"></i>院系信息管理</div>
						<ul class="submenu">
							<li><a onclick="query_all('department')">查看所有院系</a></li>
						</ul>
					</li>
					<li>
						<div class="link">班级信息管理</div>
						<ul class="submenu">
							<li><a onclick="query_all('class')">查看所有班级</a></li>
						</ul>
					</li>
					<li>
						<div class="link">学生信息管理</div>
						<ul class="submenu">
							<li><a  onclick="query_all('student')">查看所有学生</a></li>
						</ul>
					</li>
					<li>
						<div class="link">课程信息管理</div>
						<ul class="submenu">
							<li><a onclick="query_all('course')">查看所有课程</a></li>
							<li><a onclick="course_avg()">查询课程平均分</a></li>
							<li><a onclick="fail_rate()">查询课程不及格率</a></li>
							<li><a onclick="show_course_ranking()">查询课程排名情况</a></li>
						</ul>
					</li>
					<li>
						<div class="link">学生成绩管理</div>
						<ul class="submenu">
							<li><a  onclick="query_all('sc')">查看全部学生成绩</a></li>
						</ul>
					</li>
				</ul>
				</div>

				<div id="result" class="result">
					<p class="welcome">欢迎使用学生信息管理系统!</p>
				</div>
			</div>
		</div>
	</main>
	
	<footer>
		<div class="copyright">
			&copy; Copyright. All rights reserved. Design by <a href="http://www.github.com/Soarkey/">Soarkey</a>
		</div>
	</footer>

	<script src="js/jquery-3.1.1.min.js"></script>
	<script src="js/user.js"></script>
</body>
</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/117935.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

交互式仪表板!Python轻松完成!⛵

&#x1f4a1; 作者&#xff1a;韩信子ShowMeAI &#x1f4d8; 数据分析实战系列&#xff1a;https://www.showmeai.tech/tutorials/40 &#x1f4d8; 本文地址&#xff1a;https://www.showmeai.tech/article-detail/410 &#x1f4e2; 声明&#xff1a;版权所有&#xff0c;转…

2022年iFLYTEKA.I.开发者大赛疫情微博情绪识别挑战赛

自然语言技术 零基础入门NLP - 新闻文本分类 基于word2vec的word相似度 疫情微博情绪识别挑战赛自然语言技术背景一、赛事任务二、使用步骤1.README2.数据下载3.模型训练及保存4.模型预测5.比赛结果背景 疫情发生对人们生活生产的方方面面产生了重要影响&#xff0c;并引发了…

写一个计算器【后缀表达式】(C++)

前言&#xff1a; 闲来无事&#xff0c; 用后缀表达式写了个计算器。。。 支持加()、减(-)、乘(*)、除(/)、乘方(^) 啥是后缀表达式&#xff1a; 波兰逻辑学家卢卡西维奇发明的表示表达式的方法 后缀式即逆波兰式&#xff0c;是波兰逻辑学家卢卡西维奇&#xff08;&#…

mysql根据父节点递归查询所有子节点,List转树形结构工具类

经常有业务需要递归查询MySQL树形结构某一节点的所有子节点&#xff0c;每次从网上扒拉找都得找半天&#xff0c;索性就自己总结一些自己遇到的比较好用的一些方法。 SQL方法一&#xff1a; SELECT* FROM(SELECTt1.*,IF( FIND_IN_SET( parent_id, parent_ids ) > 0, paren…

2022年先进封装行业研究报告

第一章 行业概况 封装为半导体产业核心一环&#xff0c;主要目的为保护芯片。半导体封装测试处于晶圆制造过程中的后段部分&#xff0c;在芯片制造完后&#xff0c;将晶圆进行封装测试&#xff0c;将通过测试的晶圆按需求及功能加工得到芯片&#xff0c;属于整个 IC 产业链中技…

Android平台GB28181设备接入端如何实时更新经纬度实现国标平台侧电子地图位置标注

技术背景 我们在做GB28181设备接入端的时候&#xff0c;其中有个功能&#xff0c;不难但非常重要&#xff1a;那就是GB28181实时位置的订阅&#xff08;mobileposition subscribe&#xff09;和上报(notify)。 特别是执法记录仪、智能安全帽、车载终端等场景下&#xff0c;现…

mysql-基础SQL语句CRUD

文章目录MySQL基础1&#xff0c;数据库相关概念1.1 数据库1.2 数据库管理系统1.3 常见的数据库管理系统1.4 SQL2&#xff0c;MySQL2.1 MySQL安装2.1.1 下载2.1.2 安装(解压)2.2 MySQL卸载2.3 MySQL配置2.3.1 添加环境变量2.3.2 新建配置文件2.3.3 初始化MySQL2.3.4 注册MySQL服…

国家涉及身份安全新规解读 | 《关键信息基础设施安全保护要求》

2022 年11 月 7 日&#xff0c;《信息安全技术关键信息基础设施安全保护要求》&#xff08;GB/T39204-2022&#xff09;国家标准发布。作为关键信息基础设施安全保护标准体系的构建基础&#xff0c;该标准将于 2023 年 5 月 1 日正式实施。 该标准提出了以关键业务为核心的整体…

软件测试内容的要点

软件测试内容的要点 20大的召开后&#xff0c;其中提出着力点坚持把发展经济的着力点放在实体经济上&#xff0c;加快建设制造强国、质量强国、航天强国、交通强国、网络强国、数字中国。 随着网络的快速发展&#xff0c;网络和数字已经呈现在大众的视野&#xff0c;软件产品…

2022-12-27 不下载Android Studio直接下载SDK、Platforms-tools、NDK

文章目录全平台支持&#xff01;&#xff01;&#xff01;1. 下载Command line tools only2. 解压command only3. 下载SDK, Platforms-tools, NDK全平台支持&#xff01;&#xff01;&#xff01; 1. 下载Command line tools only 官网链接&#xff1a;https://developer.and…

【电商】FMS财务管理系统---数据流转模块组成

继了解FMS财务管理系统定义之后&#xff0c;如何设计一个FMS系统成了新的问题&#xff0c;笔者在此介绍了FMS的业务逻辑和结构&#xff0c;希望对读者有所帮助。 在此还是要强调一下&#xff0c;虽然这里称之为“财务系统”&#xff0c;但和专业的财务软件有区别&#xff0c;只…

零售收银软件太难挑!实测市面上最受欢迎的收银软件,第一个好用

零售收银软件千千万&#xff0c;常常让商户老板挑得眼花缭乱&#xff0c;不少老板反馈&#xff0c;不知道怎么挑选收银系统软件才能不踩雷。本期小编收集了市场受欢迎度较高的五个零售收银软件&#xff0c;整理了它们各自的优势和劣势&#xff0c;供大家参考。 第一名&#xff…

Appium基础 — APP模拟手势高级操作(一)

APP模拟手势的动作都被封装在TouchAction类中&#xff0c;TouchAction是AppiumDriver的辅助类&#xff0c;主要针对手势操作&#xff0c;如滑动、按、拖动等&#xff0c;原理是将一系列的动作放在一个链条中发送到服务器&#xff0c;服务器接受到该链条后&#xff0c;解析各个动…

碳酸氢锂溶液除钙镁

锂及其盐类是国民经济和国防建设中具有重要意义的战略物资&#xff0c;也是与人们生活息息相关的能源材料。而碳酸锂作为锂盐的基础盐&#xff0c;是制取锂化合物和金属锂的原料&#xff0c;可作铝冶炼的电解浴添加剂&#xff0c;亦可用于合成橡胶、染料、半导体等方面。电池级…

当我把用Python做的课堂点名系统献给各科老师后,再也没挂过科

文章目录起因准备工作效果展示代码实战最后起因 刚上大学的表弟问我&#xff0c;大学准备好好玩玩&#xff0c;问我有没有什么不挂科的秘诀。 哎&#xff0c;这可就问对人了&#xff0c;要想不挂科&#xff0c;先把老师贿赂好&#xff0c;当然&#xff0c;咱们说的贿赂不是送…

全国首个月子中心服务等级划分团体标准的实施拉开月子中心行业新市场格局

11月24日-25日&#xff0c;2022中国母婴业品牌大会暨第七届中国母婴产业高峰论坛在湖南省长沙市盛大召开&#xff0c;来自全国的月子中心、产后修复中心、产康中心、托育机构等近600名业内精英参与了此次盛会。由龙翔集团作为标准编制组长单位&#xff0c;作为整店输出加盟集团…

Arduino - Debugging on the Arduino IDE 2.0

文章目录Arduino - Debugging on the Arduino IDE 2.0概述如果没有官方文档, 如何手工测试哪种开发板能在Arduino IDE 中单步调试?可以调试的板子的调试按钮状态单步调试前下断点ENDArduino - Debugging on the Arduino IDE 2.0 概述 弄了2块开发板(Mega2560(MCU is ATmega2…

浏览器http缓存机制

1、前言 前端缓存主要是分为HTTP缓存和浏览器缓存。其中HTTP缓存是在HTTP请求传输时用到的缓存&#xff0c;主要在服务器代码上设置;而浏览器缓存则主要由前端开发在前端js上进行设置。 http缓存是web缓存的核心&#xff0c;是最难懂的那一部分,也是最重要的那一部分。 2、H…

【大数据clickhouse】clickhouse 数据备份与恢复

一、前言 与其他的数据存储引擎类似&#xff0c;clickhouse承载着大数据量级的数据存储&#xff0c;对于数据的备份与恢复也是必须考虑的&#xff0c;本文将通过操作演示下如何对clickhouse数据进行备份与恢复。 官网说明&#xff1a;官网备份操作说明clickhouse可以通过手动进…

NEMU(RISC-V64)基础知识(一)

目录 1、术语和定义 2、CISC和RISC的区别 3、vimtutor指令查看常见VIM使用命令 4、GDB调试 5、x86中寄存器 6、x86中指令的具体行为 7、中断和异常 8、RISC-V的中断 9、一条指令在NEMU中的执行过程 10、NEMU中的输入输出 11、在NEMU的运行时环境中执行程序步骤 12、…