首页 > 编程语言 >Java毕设项目II基于Java的学籍管理系统设计与实现

Java毕设项目II基于Java的学籍管理系统设计与实现

时间:2024-08-25 10:52:06浏览次数:11  
标签:毕设 return II Java user userService import 界面 com

目录

一、前言

二、技术介绍

三、系统实现

四、论文参考

五、核心代码

六、源码获取


全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末

一、前言

在信息化教育快速发展的今天,传统的手工管理学籍方式已难以满足学校日益增长的管理需求。学籍信息作为学生管理的基础数据,其准确性、完整性和及时性对学校的教学管理和决策支持至关重要。因此,设计并实现一个高效、便捷的学籍管理系统成为现代学校管理的重要一环。基于Java的学籍管理系统,凭借其强大的跨平台能力、丰富的开发资源和成熟的开发框架,成为众多学校的首选。本系统旨在通过自动化和数字化的方式,优化学籍管理流程,提高管理效率,为学校的教育管理工作提供有力支持。本文将详细介绍该系统的设计与实现过程,包括需求分析、系统设计、关键技术实现及系统测试等关键步骤。

二、技术介绍

语言:Java
使用框架:Spring Boot
前端技术:JS、Vue 、css3
开发工具:IDEA/Eclipse
数据库:MySQL 5.7/8.0
数据库管理工具:phpstudy/Navicat
JDK版本:jdk1.8
Maven: apache-maven 3.8.1-bin
前端环境:Node.Js 12\14\16

三、系统实现

成绩信息管理

实现成绩信息管理功能,其界面运行的效果图见图5.1。在该界面,管理员修改,删除,查询学生成绩信息,学生成绩信息主要包括学科类型,成绩,学生姓名,头像,手机号,成绩标题等信息。

电子文档管理

实现电子文档管理功能,其界面运行的效果图见图5.2。在该界面,管理员可以新增电子文档信息,电子文档包括文档标题,文档类型,学生姓名,手机号,头像等信息,管理员可以修改学生的电子文档信息,可以根据文档标题查询学生的电子文档信息。

课程信息管理

实现课程信息管理功能,其界面运行的效果图见图5.3。在该界面,管理员负责新增课程信息,课程信息有课程封面,课程文件,课程名称,教师等信息,如果在本界面,发现登记有误的课程信息,管理员可以使用修改功能及时更正。

学生管理

实现学生管理功能,其界面运行的效果图见图5.4。在该界面,管理员对学生的手机号,身份证号,性别,院系,政治面貌等信息进行登记,可以对存在登记错误的学生信息进行修改,也能查询学生等。

公告信息管理

实现公告信息管理功能,其界面运行的效果图见图5.5。在该界面,管理员需要每天发布公告,在本界面对公告进行管理,包括修改,删除。

成绩信息查看

实现成绩信息查看功能,其界面运行的效果图见图5.6。在该界面,学生通过详情链接的点击可以查看成绩的详细内容,学生在查询编辑框中输入成绩标题可以查询成绩,可以选择学科类型筛选成绩信息,可以通过学生姓名查询学生成绩等。

电子文档查看

实现电子文档查看功能,其界面运行的效果图见图5.7。在该界面,学生不仅可以查看电子文档的详细内容,也能下载电子文档文件,还可以在电子文档查看界面查询电子文档信息等。

课程信息查看

实现课程信息查看功能,其界面运行的效果图见图5.8。在该界面,学生不仅可以通过详情链接的点击来了解更多关于课程方面的信息,学生也能下载课程文件,在课程信息查看界面,可以根据课程类型筛选课程信息,可以根据教师姓名查询课程信息等。

四、论文参考

第1章 绪论  
1.1 研究背景与意义  
1.2 开发现状 
1.3 论文组成结构 
第2章 开发工具及相关技术介绍  
2.1 框架描述 
2.2 MySQL数据库 
2.3 JAVA语言 
第3章 系统分析  
3.1 可行性分析   
3.1.1 经济可行性 
3.1.2 技术可行性 
3.1.3 操作可行性 
3.2 功能性需求分析  
3.3 性能分析 
3.4 系统操作流程 
3.4.1 用户登录流程  
3.4.2 信息添加流程  
3.4.3 信息删除流程  
第4章 系统设计  
4.1 系统架构设计 
4.2 开发流程设计 
4.3 数据库设计   
4.3.1 实体ER图  
4.3.2 数据表 
第5章 系统实现  
5.1 管理员主要功能实现  
5.2 教师用户主要功能实现
5.3 学生用户主要功能实现
5.4 PC端主要功能实现
第6章 系统测试  
6.1 软件测试的概念  
6.2 软件测试过程 
6.3 系统测试阶段 
6.4 测试结果 
第7章 总结与展望
参考文献  
致谢  
 

五、核心代码

 
package com.controller;
 
 
import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
import java.util.Map;
 
import javax.servlet.http.HttpServletRequest;
 
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
 
import com.annotation.IgnoreAuth;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.entity.TokenEntity;
import com.entity.UserEntity;
import com.service.TokenService;
import com.service.UserService;
import com.utils.CommonUtil;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.ValidatorUtils;
 
/**
 * 登录相关
 */
@RequestMapping("users")
@RestController
public class UserController{
	
	@Autowired
	private UserService userService;
	
	@Autowired
	private TokenService tokenService;
 
	/**
	 * 登录
	 */
	@IgnoreAuth
	@PostMapping(value = "/login")
	public R login(String username, String password, String captcha, HttpServletRequest request) {
		UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
		if(user==null || !user.getPassword().equals(password)) {
			return R.error("账号或密码不正确");
		}
		String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());
		return R.ok().put("token", token);
	}
	
	/**
	 * 注册
	 */
	@IgnoreAuth
	@PostMapping(value = "/register")
	public R register(@RequestBody UserEntity user){
//    	ValidatorUtils.validateEntity(user);
    	if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
    		return R.error("用户已存在");
    	}
        userService.insert(user);
        return R.ok();
    }
 
	/**
	 * 退出
	 */
	@GetMapping(value = "logout")
	public R logout(HttpServletRequest request) {
		request.getSession().invalidate();
		return R.ok("退出成功");
	}
	
	/**
     * 密码重置
     */
    @IgnoreAuth
	@RequestMapping(value = "/resetPass")
    public R resetPass(String username, HttpServletRequest request){
    	UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
    	if(user==null) {
    		return R.error("账号不存在");
    	}
    	user.setPassword("123456");
        userService.update(user,null);
        return R.ok("密码已重置为:123456");
    }
	
	/**
     * 列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,UserEntity user){
        EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
    	PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));
        return R.ok().put("data", page);
    }
 
	/**
     * 列表
     */
    @RequestMapping("/list")
    public R list( UserEntity user){
       	EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
      	ew.allEq(MPUtil.allEQMapPre( user, "user")); 
        return R.ok().put("data", userService.selectListView(ew));
    }
 
    /**
     * 信息
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") String id){
        UserEntity user = userService.selectById(id);
        return R.ok().put("data", user);
    }
    
    /**
     * 获取用户的session用户信息
     */
    @RequestMapping("/session")
    public R getCurrUser(HttpServletRequest request){
    	Long id = (Long)request.getSession().getAttribute("userId");
        UserEntity user = userService.selectById(id);
        return R.ok().put("data", user);
    }
 
    /**
     * 保存
     */
    @PostMapping("/save")
    public R save(@RequestBody UserEntity user){
//    	ValidatorUtils.validateEntity(user);
    	if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
    		return R.error("用户已存在");
    	}
        userService.insert(user);
        return R.ok();
    }
 
    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody UserEntity user){
//        ValidatorUtils.validateEntity(user);
        userService.updateById(user);//全部更新
        return R.ok();
    }
 
    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        userService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
}

六、源码获取

 感谢大家点赞、收藏、关注、评论啦 、获取联系方式在个人简介绿泡泡

标签:毕设,return,II,Java,user,userService,import,界面,com
From: https://blog.csdn.net/Seapostmoon/article/details/141495889

相关文章

  • (javaweb)springboot的底层原理
    目录一.配置优先级二.Bean的管理1.获取bean​编辑​编辑2.bean作用域3.第三方bean三.SpringBoot原理 自动配置原理原理分析:conditional: 自动配置案例:(自定义starter分析)总结一.配置优先级//命令行参数的优先级最高二.Bean的管理1.获取bean注入ioc......
  • (javaweb)登录功能的校验与认证
    目录1.基础登录功能2.登录校验概述登录认证:1.会话技术2.三种会话技术的对比1.cookie2.Session3.令牌技术登录校验JWT令牌1.令牌介绍2.生成和校验3.登录后下发令牌过滤器filter快速入门详解(执行流程拦截路径过滤器链)过滤器链拦截器Interceptor 快速入门......
  • JavaScript 构建一个简单的待办事项应用
    包含添加、删除、标记任务功能。<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><title>TodoList&......
  • java+vue计算机毕设山泉水订购系统【源码+开题+论文】
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着人们对健康生活的追求日益增强,天然山泉水作为一种健康、纯净的饮用水源,逐渐受到广大消费者的青睐。然而,传统的山泉水销售模式往往受限于地域、时......
  • java+vue计算机毕设汽车配件销售系统设计与实现【源码+开题+论文】
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着汽车工业的飞速发展,汽车配件市场日益繁荣,消费者对配件的需求也日益多样化与个性化。传统的汽车配件销售模式面临着信息不透明、库存管理复杂、订......
  • java+vue计算机毕设沐清泉洗浴管理系统【源码+开题+论文】
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着人们生活水平的提高和消费观念的转变,休闲娱乐行业,尤其是洗浴中心,已成为现代人放松身心的重要场所。然而,传统洗浴中心的管理方式往往依赖于人工操......
  • java+vue计算机毕设社区健康信息管理系统设计与实现【源码+开题+论文】
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着人口老龄化的加速和生活节奏的加快,社区健康管理成为保障居民健康、提升生活质量的重要环节。传统的社区健康管理模式存在信息孤岛、效率低下、服......
  • 基于java+ssm+vue的外卖点餐微信小程序
    ......
  • Java的Math.abs()返回的一定都是非负数吗?
    结论  在使用 Math.abs() 时,除非处理 Integer.MIN_VALUE 或 Long.MIN_VALUE,返回的绝对值通常是非负的。Math.abs() 方法总结功能:Math.abs() 方法用于返回数字的绝对值。返回类型:适用于不同的数据类型,包括 int、long、float 和 double。返回值特性:正数和......
  • Java超市收银系统(十、爬虫)
    引言        爬虫功能实现,要求爬取页面数据至少100条,这里以豆瓣音乐为示例编写代码豆瓣音乐标签:民谣(douban.com)。功能实现        除了爬虫功能增加,代码其他内容原理和之前博客发布是一致的,只不过这里为了区分,我们重新创建数据库,名称为music,依旧是vo包......