基于java jsp+mysql+servlet+Spring的学生信息管理

【JAVA】Eclipse+MYSQL数据库+JSP+基础Servlet开发JavaWeb学生信息管理系统 本人是计算机相关专业的一个学生,大一学了Java,熟悉了一些Java代码,觉得挺有意思便在网上自学了一点基础的Servlet和前端页面的制作,正好实训周的实训项目是写一个学生管理系统,便琢磨了这样一套代码。学生信息管理系统是为了方便老师查看学生信息,成绩信息等等的平台,所以我们的代码实现出来的效果必须要很清楚明了地展现这些功能。此学生系统有登录过程,所以可能会比一般的代码多,话不多说,来吧,展示!以上就是我本次分享的所有内容啦,因为是第一次写博客,有些地方解释的不到位,请多多包涵。 阅读详情

目录​

项目背景

功能设计

角色设计

主要技术

具体功能实现

登录:

首页:

学生管理:

老师管理:

成绩管理:

个人中心:

部分代码实现:

登录前端:

登录后台servlet:

链接数据库:

部分表结构:

学生表:

成绩表:

班级表:

相关Java基础课设精彩推送

查看更多博主首页更多实战项目 >>>

项目背景

学生信息档案的管理对于学校的管理者来说至关重要,学生信息是高等学校非常重要的一项数据资源,是一个教育单位不可缺少一部分。特别是近几年来,国家政策的调整,我国高等院校大规模的扩招,给高等院校的教学管理、学生管理、后勤管理等方面都带来不少的冲击。其包含的数据量大,涉及的人员面广,而且需要及时更新,故较为复杂,难以单纯地依靠人工管理,而且传统的人工管理方式既不易于规范化,管理效率也不高,我国各类高等院校中还有相当一部分学生档案管理还停留在纸介质的基础上,尤其是中、小学对学生档案的管理更是落后,这样的管理机制已经不能适应时代发展的要求,其管理方法将浪费许多人力和物力。随着科学技术的不断提高,计算机科学与技术日渐成熟,计算机应用的普及已进入人类社会生活的各个领域,并发挥着越来越重要的作用。这种传统的手工管理模式必然被以计算机为物质基础的信息管理方法所取代。文末获取源码联系方式

功能设计

主要功能:用户不同角色登录(老师、学生、管理员)

系统首页介绍

学生管理:添加学生、查看学生列表信息、查看学生资料

老师管理:添加老师、查看老师列表信息、查看老师资料

成绩管理:查看成绩信息、修改成绩

个人中心:修改个人资料、头像等、注销退出

角色设计

拥有管理员、老师、学生三种角色、每个角色对应不同菜单权限

主要技术

用的技术都是比较基础好学通俗易懂的Java jsp+mysql+servlet+jdbc+jquery+html+css等

具体功能实现

登录:

根据不同账号角色进行登录

​

首页:

首页主要是利用css等进行简单的布局、左侧是菜单栏、中间是系统介绍、右上角是个人中心和账户信息以及注销。

​

学生管理:

添加学生

​

学生列表:

管理员拥有编辑删除权限、老师拥有编辑权限。学生只能查看信息。

​

老师管理:

添加老师信息

​

查看老师列表信息:

​

成绩管理:

学生成绩信息查看

​

个人中心:

个人中心随意做了一个alert弹窗

​

部分代码实现:

登录前端:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>学生信息管理系统</title>
<script src="js/jquery-1.8.3.min.js" type="text/javascript"></script>
<script src="js/login.js" type="text/javascript"></script>
<link href="css/style.css" rel="stylesheet" type="text/css">
</head>
<body>
	<center>
		<div class="login">
			<div class="login_head">
				<h3>登录</h3>
			</div>
			<div class="login_window">
				<div>
					<label>账号:</label> <br> <input type="text" name="ope_name"
						id="ope_name">
				</div>
				<div>
					<label>密码:</label> <br> <input type="password" name="ope_pwd"
						id="ope_pwd">
				</div>
				<input
					style="width:60px; float:right; margin-top:10px;margin-right:20px;"
					type="button" value="登录" onclick="login()">
			</div>
		</div>
	</center>
</body>
</html>

登录后台servlet:

package impl;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import util.DB;
import dao.ILogin;
import entity.Operator;
import entity.Privilege;

public class LoginImpl implements ILogin {
	private PrivilegeImpl1 privilegeImpl = new PrivilegeImpl1();
	private RoleImpl roleImpl = new RoleImpl();
	private List<Privilege> list_privilege;
	private PreparedStatement pst;
	private Operator log_operator;
	private HttpSession session;
	private String checkResult;
	private Connection conn;
	private ResultSet rs;

	// 登录验证
	public String login(HttpServletRequest request, Operator operator) {
		session = request.getSession();
		checkResult = "success";
		log_operator = new Operator();
		try {
			conn = DB.getConn();
			pst = conn
					.prepareStatement("SELECT * FROM operator WHERE ope_name = ?");
			pst.setString(1, operator.getName());
			rs = pst.executeQuery();
			if (!rs.next()) {
				checkResult = "账户不存在,请重新输入!";
				session.setAttribute("isLogin", "false");
			} else {
				if (!operator.getPwd().equals(rs.getString(3))) {
					checkResult = "您输入的密码不正确,请重新输入!";
					session.setAttribute("isLogin", "false");
				} else {
					// 登录成功
					session.setAttribute("isLogin", "true");

					// 获得该用户的完整信息
					log_operator.setId(rs.getInt(1));
					log_operator.setName(rs.getString(2));
					log_operator.setPwd(rs.getString(3));
					log_operator.setRole(roleImpl.query("rol_id",
							rs.getString(4)).get(0));
					session.setAttribute("log_operator", log_operator);

					// 根据用户,获取对应的角色对应的权限
					list_privilege = privilegeImpl.query("rol_id", log_operator
							.getRole().getId()
							+ "");
					List<Privilege> list = new ArrayList<Privilege>();
					list.add(list_privilege.get(0));
					
					for (int i = 1; i < list_privilege.size(); i++) {
                          int y=0;
						for(int x=0;x<list.size();x++){
							
							if(!list.get(x).getMenu_name().equals(
									list_privilege.get(i).getMenu_name())){
								y++;
							}
						}
						if (y==list.size()) {
							list.add(list_privilege.get(i));

						}

					}
					session.setAttribute("list", list);
					session.setAttribute("list_privilege", list_privilege);
				}
			}
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			DB.close(conn, pst, rs);
		}
		return checkResult;
	}
}

链接数据库:

利用最基本的jdbc进行链

package util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

public class DB {
	// 获取数据库连接
	public static Connection getConn() {
		Connection conn = null;
		String url = "jdbc:mysql://localhost:3306/jsp_studentmanager?characterEncoding=utf8";
		String name = "root";
		String pwd = "123456";
		try {
			Class.forName("com.mysql.jdbc.Driver");
			conn = DriverManager.getConnection(url, name, pwd);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return conn;
	}

	// 关闭对象 释放资源
	public static void close(Connection conn, PreparedStatement pst,
			ResultSet rs) {
		try {
			if (rs != null)
				rs.close();
			if (pst != null)
				pst.close();
			if (conn != null)
				conn.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}

部分表结构:

学生表:

CREATE TABLE `NewTable` (
`stu_id`  int(11) NOT NULL AUTO_INCREMENT ,
`ope_id`  int(11) NULL DEFAULT NULL ,
`stu_no`  varchar(22) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`stu_name`  varchar(22) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`stu_sex`  enum('男','女') CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '男' ,
`stu_birth`  date NULL DEFAULT NULL ,
`stu_pic`  varchar(22) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`cla_id`  int(11) NULL DEFAULT NULL ,
PRIMARY KEY (`stu_id`),
FOREIGN KEY (`cla_id`) REFERENCES `classes` (`cla_id`) ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY (`ope_id`) REFERENCES `operator` (`ope_id`) ON DELETE CASCADE ON UPDATE CASCADE,
UNIQUE INDEX `uni_no` (`stu_no`) USING BTREE ,
UNIQUE INDEX `uni_ope` (`ope_id`) USING BTREE ,
INDEX `fk_stu_cla` (`cla_id`) USING BTREE ,
INDEX `fk_stu_ope` (`ope_id`) USING BTREE 
)
ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci
AUTO_INCREMENT=13
ROW_FORMAT=COMPACT
;

CREATE DEFINER=`root`@`localhost` TRIGGER `TG_3` AFTER DELETE ON `NewTable`
FOR EACH ROW BEGIN
DELETE FROM operator WHERE ope_id = old.ope_id;
END;

成绩表:

CREATE TABLE `NewTable` (
`sco_id`  int(11) NOT NULL AUTO_INCREMENT ,
`sco_daily`  float NULL DEFAULT 0 ,
`sco_exam`  float NULL DEFAULT 0 ,
`sco_count`  float NULL DEFAULT 0 ,
`stu_id`  int(11) NULL DEFAULT NULL ,
`sub_id`  int(11) NULL DEFAULT NULL ,
`cla2sub_id`  int(11) NOT NULL ,
`cla_id`  int(11) NOT NULL ,
PRIMARY KEY (`sco_id`),
FOREIGN KEY (`stu_id`) REFERENCES `student` (`stu_id`) ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY (`sub_id`) REFERENCES `subject` (`sub_id`) ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY (`cla2sub_id`) REFERENCES `cla2sub` (`cla2sub_id`) ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY (`cla_id`) REFERENCES `classes` (`cla_id`) ON DELETE CASCADE ON UPDATE CASCADE,
UNIQUE INDEX `uni_stu_sub` (`stu_id`, `sub_id`, `cla2sub_id`) USING BTREE ,
INDEX `fk_sco_sub` (`sub_id`) USING BTREE ,
INDEX `fk_sco_stu` (`stu_id`) USING BTREE ,
INDEX `fk_sco_cla` (`cla2sub_id`) USING BTREE ,
INDEX `cla_id` (`cla_id`) USING BTREE 
)
ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci
AUTO_INCREMENT=33
ROW_FORMAT=COMPACT
;

班级表

CREATE TABLE `NewTable` (
`cla_id`  int(11) NOT NULL AUTO_INCREMENT ,
`cla_name`  varchar(22) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`maj_id`  int(11) NULL DEFAULT NULL ,
`cla_tec`  varchar(22) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
PRIMARY KEY (`cla_id`),
FOREIGN KEY (`maj_id`) REFERENCES `major` (`maj_id`) ON DELETE CASCADE ON UPDATE CASCADE,
UNIQUE INDEX `uni_name` (`cla_name`) USING BTREE ,
INDEX `fk_cla_maj` (`maj_id`) USING BTREE 
)
ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci
AUTO_INCREMENT=8
ROW_FORMAT=COMPACT
;

CREATE DEFINER=`root`@`localhost` TRIGGER `TG_7` BEFORE DELETE ON `NewTable`
FOR EACH ROW BEGIN
DELETE FROM operator WHERE ope_id IN (SELECT ope_id FROM student WHERE cla_id = old.cla_id);
END;

 获取完整源码:

大家点赞、收藏、关注、评论啦 、查看👇🏻👇🏻👇🏻微信公众号获取联系👇🏻👇🏻👇🏻

打卡 文章 更新 70/  100天


Java Web用户信息管理系统的简单设计(增删查改) 用户信息管理系统 技术需求:Servlet +jsp+ mvc +jdbc 软件需求 :Eclipse mysql Tomcat Google 功能需求:完成用户登录 查询所有用户 增加删除用户信息等 数据库设计: 创建用户表 User 首先创建数据库用户表 创建对应的实体类:User.java package cn.qlu.domin; public class Use... 阅读详情

相关推荐

ssm框架实现学生信息管理系统(源码非原创)

ssm框架实现学生信息管理系统(源码非原创) 在这里将详细阐述学生信息管理系统的部署和实现 首先先确认系统准备环境,在这里我使用的是tomcat 7.0、 jdk 1.8 、mysql5.7、navicat for mysql15(非必要,后期使用)、eclipse(我使用的是 luna版) 第一步:将项目源码导入eclipse中 第二步:确认环境是否正确配置,具体为tomcat和MySQL的配置 一、MySQL的正确配置: 本地装完之后MySQL后牢记账户和密码,一般默认账户为root,密码为自己设

qq_46432717的博客 2926

基于java eclipse+jsp+mysql+servlet+Spring的学生信息管理系统基础版

项目背景 学生信息档案的管理对于学校的管理者来说至关重要,学生信息是高等学校非常重要的一项数据资源,是一个教育单位不可缺少一部分。特别是近几年来,国家政策的调整,我国高等院校大规模的扩招,给高等院校的教学管理、学生管理、后勤管理等方面都带来不少的冲击。其包含的数据量大,涉及的人员面广,而且需要及时更新,故较为复杂,难以单纯地依靠人工管理,而且传统的人工管理方式既不易于规范化,管理效率也不高,我国各类高等院校中还有相当一部分学生档案管理还停留在纸介质的基础上,尤其是中、小学对学生档案的管理更是落后,这样的管

java李阳勇的博客 3万+

基于java eclipse+jsp+mysql+servlet+Spring的学生信息管理系统基础版【建议收藏

包含最全MySQL、Redis、Java并发编程等等面试题和答案,用于参考~

2401_84584682的博客 975

Java用户管理系统【完整版】

JavaWeb项目用户管理系统

少年你真的要止步于此嘛。 1万+

java swing学生成绩管理系统(eclipse+MySQL)

课程设计java swing+MySQL学生成绩管理系统,实现了成绩信息的增删改查、课程管理、学生信息管理、修改密码、系统登录。有数据库文件,下载就能运行,可以根据需求进行修改。

robomimic实验复现全流程指南:从数据集下载到训练视频生成

本文提供了RoboMimic实验复现的完整实战指南,重点解析了从数据集下载、配置文件定制到模型训练与评估的全流程。以tool_hang任务为例,详细说明了环境准备、数据获取、训练监控及视频生成等关键步骤,并针对常见问题给出了排查方案,帮助研究者高效完成机器人模仿学习实验的闭环验证。

2w3e4r5t6y的博客 1034

基于JavaWeb开发的java eclipse+jsp+mysql+servlet+Spring的学生信息管理系统基础版

基于JavaWeb开发的java eclipse+jsp+mysql+servlet+Spring的学生信息管理系统基础版

央顺科技官方博客 1882

Codex接入CCSwitch:本地代理与模型路由配置指南

在AI编程工具链中,本地代理与模型路由是连接智能体与模型服务的核心桥梁。Codex作为OpenAI推出的编程智能体,虽然具备强大的仓库理解和自主编码能力,但其默认模型链路固定,导致在多模型切换、内网统一管理及成本控制上存在天然瓶颈。CCSwitch正是为解决这一痛点而生的本地代理工具,它通过OpenAI兼容协议将Codex的请求透明转发至DeepSeek、通义千问等第三方模型服务,使模型切换如同点击按钮般简单。本文从本地代理和模型路由器的基础原理切入,系统讲解Codex与CCSwitch的安装配置、模型ID

weixin_33910460的博客 429

基于java eclipse+jsp+mysql+servlet+Spring的学生信息管理系统基础版_eclipse数据库操作学生信息管理系统

上述知识点,囊括了目前互联网企业的主流应用技术以及能让你成为“香饽饽”的高级架构知识,每个笔记里面几乎都带有实战内容。很多人担心学了容易忘,这里教你一个方法,那就是重复学习。打个比方,假如你正在学习 spring 注解,突然发现了一个注解@Aspect,不知道干什么用的,你可能会去查看源码或者通过博客学习,花了半小时终于弄懂了,下次又看到@Aspect 了,你有点郁闷了,上次好像在哪哪哪学习,你快速打开网页花了五分钟又学会了。从半小时和五分钟的对比中可以发现多学一次就离真正掌握知识又近了一步。

2401_84446919的博客 1041

《R语言实战》第八章之回归分析图形

回归分析图形 回归分析分为简单回归与复杂回归 1 : 简单线性回归即:模型中只包含一个因变量和一个自变量,有时候也会包含多项式, 这个图形描述了身高与体重的线性关系,这也是一个多项式图形 2:当我们的预测变量(自变量)不止一个时,就属于多元线性回归,而且多元线性回归中也可以包含多项式以及交互项 (1)在进行多远回归分析之前可以先描述变量之间的相关关系 上图为一个散点图矩阵,描述了五个变量之间的相关关系,我们可以通过非主对角线的散点图来查看两个变量之间的关系。 多元线性回归简单地就是OLS回归,通过lm和

Strawberry_Ya的博客 1836

【雷达信号处理实战】从原理到代码:脉冲多普勒(PD)处理全流程解析与MATLAB仿真

本文深入解析了脉冲多普勒(PD)雷达信号处理的核心原理与全流程。通过剖析多普勒效应、脉冲压缩与慢时间FFT等关键技术,并结合详细的MATLAB仿真代码,手把手指导如何从信号建模、回波模拟到最终生成距离-多普勒谱,实现运动目标的精确测距与测速,直观展示了相参积累带来的显著性能增益。

pca5navigator的博客 954

基于java eclipse+jsp+mysql+servlet+Spring的学生信息管理系统基础版_基于eclipse的javaweb,数据库和jsp的什么什么的系统

学生信息档案的管理对于学校的管理者来说至关重要,学生信息是高等学校非常重要的一项数据资源,是一个教育单位不可缺少一部分。特别是近几年来,国家政策的调整,我国高等院校大规模的扩招,给高等院校的教学管理、学生管理、后勤管理等方面都带来不少的冲击。

2401_85405758的博客 436

深入YOLOv8内部核心:用RepNCSPELAN4深度重构主干网络,即插即用的高效涨点方案

本文提出了一种改进YOLOv8目标检测模型的方法,通过在YOLOv8中引入RepNCSPELAN模块来提高检测性能。该模块融合了RepVGG重参数化思想与CSP-ELAN结构,在保持推理速度的同时增强特征表达能力。实验结果表明,改进后的RepNCSPELAN-YOLOv8相比原模型在多项指标上均有提升:准确率从0.84提高到0.86,召回率从0.72提升至0.81,mAP50和mAP50-95也分别提高了0.06和0.04。文章详细介绍了模块设计原理和移植步骤,包括配置文件创建、代码修改等关键环节,为YOL

FJN110的博客 189

jsp高等学校学生信息管理系统的设计与实现3r85a程序+源码+数据库+调试部署+开发环境

随着高等教育的快速发展,学生信息量剧增,传统的人工管理方式已难以满足高效、准确的学生信息管理需求。因此,设计并实现一套高等学校学生信息管理系统,对于提升学校管理水平、优化资源配置、增强教育决策的科学性具有重要意义。

CK3043的博客 623

手把手教你学Simulink——基于Simulink的无位置传感器PMSM滑模观测器(SMO)控制

本文基于Simulink平台实现无位置传感器PMSM滑模观测器(SMO)控制,解决了传统机械位置传感器存在的成本高、体积大、抗干扰差等问题。SMO通过滑模切换函数估算反电动势,进而获得转子位置和速度,具有强鲁棒性(参数变化20%误差仅0.4°)和良好低速性能(50rpm转矩衰减<5%)。文章详细介绍了PMSM数学模型、SMO算法设计、Simulink建模步骤及参数优化方法,提供了可直接工程应用的MATLAB代码和仿真模型,为电动汽车驱动、工业机器人等高精度控制场景提供了有效解决方案。

MHD0815的博客 229

基于STM32L4XX、HAL库的MCP4561数字电位器驱动程序设计

/ HAL库需要左移一位。* @param address: 设备地址(0x2C-0x2F)* @param hmcp: MCP4561句柄。* @param hmcp: MCP4561句柄。* @param hmcp: MCP4561句柄。* @param hmcp: MCP4561句柄。* @param hmcp: MCP4561句柄。* @param hmcp: MCP4561句柄。* @param hmcp: MCP4561句柄。* @param hi2c: I2C句柄。

zhusl6688的博客 342

基于javaweb和mysql的jsp+servlet简单学生信息管理系统(java+servlet+mysql+jsp+bootstrap)

基于javaweb和mysql的jsp+servlet简单学生信息管理系统(java+servlet+mysql+jsp+bootstrap)基于javaweb的JSP+Servlet简单学生信息管理系统(java+servlet+mysql+jsp+bootstrap)eclipse/idea/myeclipse/sts等均可配置运行。课程设计,大作业,毕业设计,项目练习,学习演示等。学生信息增删改查管理。

欢迎私信 307

东北大学计算机预推免(双非友好)

东北大学,个人觉得在985里面对双非比较友好,而且学校的计算机专业实力也比较强,上岸难度不算很大,可以重点关注一下。学校复试审核的时间比较早,拿到复试资格之后,一定要留意报名系统首页中计算机学院的信息,学校也会在全国各地不同时间安排面试,可以根据自己的情况选择一个合适的时间前去面试,并且有对应面试场次的QQ群,信息会在群里面发布。面试成绩会在预推免系统中直接公布,但是是否拟录取不会公布,需要考生自行判断,今年计算机学院录取线定在了86分左右,最终递补下来,好像录取到了84分左右。

D1379951481的博客 3121

JavaWeb基于Jsp+Servlet的学生信息管理系统(源码+SQL文件+实验报告)分享

注册+登录+验证码+学生信息增删改查+分页查询+jsp+servlet+JavaBean+MySQL+tomcat 此项目为最基本的Java web课程设计。只需要对数据、数据类型进行修改,就可以作为其他名称的项目。 主要技术:Jsp+Servlet+Mysql+Tomcat+Eclipse 适用场合:Java课程设计/Java大作业 项目类型:JAVA WEB项目 用户类型:管理员 开发工具:Eclipse 数据库表:2张 功能介绍:实现注册登录,分页查询,以及对学生信息的增删改查。 1.注册 2.登录

学长源码的博客 1万+

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

基于javaweb jsp+servlet学生宿舍管理系统

javaweb jsp+servlet学生宿舍管理系统简单版(完整源码+sql文件可直接运行)主要功能:不同角色登录、宿舍管理员管理、学生信息管理、宿舍信息管理、学生缺勤管理、修改密码和退出功能

java李阳勇的博客 1万+

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

基于SSM架构实现学生信息管理系统

本项目是一个基于SSM(Spring+SpringMVC+MyBatis)框架搭建的学生信息管理系统,实现了对学生、用户等信息的增删改查功能,以及登录、分页等功能。本项目采用了三层架构,分为entity层、service层、dao层和controller层,使用了Maven进行项目管理,使用了MySQL作为数据库。

m0_73685411的博客 5104

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

上一篇: 基于Java+SpringMvc+vue+element实现博物馆平台系统
下一篇: 基于Java+SpringBoot+vue+element实现毕业就业招聘系统
奥斯卡1号
博客等级 码龄5年 1万+粉丝 1134原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值