Java项目:41 springboot大学生入学审核系统的设计与实现010

作者主页:源码空间codegym

简介:Java领域优质创作者、Java项目、学习资料、技术互助

文中获取源码

项目介绍

本大学生入学审核系统管理员和学生。

管理员功能有个人中心,学生管理,学籍信息管理,入学办理管理等。

学生功能有个人中心,学籍信息管理,入学办理管理等。

环境要求

1.运行环境:最好是java jdk1.8,我们在这个平台上运行的。其他版本理论上也可以。

2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;

3.tomcat环境:Tomcat7.x,8.X,9.x版本均可

4.硬件环境:windows7/8/10 4G内存以上;或者Mac OS;

5.是否Maven项目:是;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven.项目

6.数据库:MySql5.7/8.0等版本均可;

技术栈

运行环境:jdk8 + tomcat9 + mysql5.7 + windows10

服务端技术:Spring Boot+ Mybatis +VUE

使用说明

1.使用Navicati或者其它工具,在mysql中创建对应sq文件名称的数据库,并导入项目的sql文件;

2.使用IDEA/Eclipse/MyEclipse导入项目,修改配置,运行项目;

3.将项目中config-propertiesi配置文件中的数据库配置改为自己的配置,然后运行;

运行指导

idea导入源码空间站顶目教程说明(Vindows版)-ssm篇:

http://mtw.so/5MHvZq

源码地址:http://codegym.top

运行截图

文档截图

image-20240305231513796

项目文档

2

3

4

5

6

代码

package com.controller;import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.entity.SusheEntity;
import com.entity.SusheYonghuEntity;
import com.entity.view.SusheView;
import com.service.DictionaryService;
import com.service.SusheService;
import com.service.SusheYonghuService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.StringUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;import javax.servlet.http.HttpServletRequest;
import java.util.*;/*** 宿舍信息* 后端接口* @author* @email* @date
*/
@RestController
@Controller
@RequestMapping("/sushe")
public class SusheController {private static final Logger logger = LoggerFactory.getLogger(SusheController.class);@Autowiredprivate SusheService susheService;@Autowiredprivate TokenService tokenService;@Autowiredprivate DictionaryService dictionaryService;@Autowiredprivate SusheYonghuService susheYonghuService;//级联表service/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params, HttpServletRequest request){logger.debug("page方法:,,Controller:{},,params:{}",this.getClass().getName(),JSONObject.toJSONString(params));params.put("orderBy","id");String role = String.valueOf(request.getSession().getAttribute("role"));PageUtils page = susheService.queryPage(params);if(StringUtil.isNotEmpty(role) && "用户".equals(role)){ // 如果是用户的话,就删除 不是当前学生宿舍 的宿舍EntityWrapper<SusheYonghuEntity> wrapper = new EntityWrapper<>();wrapper.eq("yonghu_id",request.getSession().getAttribute("userId"));SusheYonghuEntity susheYonghuEntity = susheYonghuService.selectOne(wrapper);if(susheYonghuEntity!= null){Integer susheId = susheYonghuEntity.getSusheId();List<SusheView> list1 = (List<SusheView>)page.getList();Iterator<SusheView> it = list1.iterator();while(it.hasNext()){SusheView susheView = it.next();if(susheView.getId() != susheId){it.remove();}}}else{page.setList(new ArrayList<SusheView>());}}//字典表数据转换List<SusheView> list =(List<SusheView>)page.getList();for(SusheView c:list){//修改对应字典表字段dictionaryService.dictionaryConvert(c);}return R.ok().put("data", page);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){logger.debug("info方法:,,Controller:{},,id:{}",this.getClass().getName(),id);SusheEntity sushe = susheService.selectById(id);if(sushe !=null){//entity转viewSusheView view = new SusheView();BeanUtils.copyProperties( sushe , view );//把实体数据重构到view中//修改对应字典表字段dictionaryService.dictionaryConvert(view);return R.ok().put("data", view);}else {return R.error(511,"查不到该宿舍");}}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody SusheEntity sushe, HttpServletRequest request){logger.debug("save方法:,,Controller:{},,sushe:{}",this.getClass().getName(),sushe.toString());String building = sushe.getBuilding();String unit = sushe.getUnit();String room = sushe.getRoom();Wrapper<SusheEntity> queryWrapper = new EntityWrapper<SusheEntity>().eq("building", building).eq("unit", unit).eq("room",room);logger.info("sql语句:"+queryWrapper.getSqlSegment());SusheEntity susheEntity = susheService.selectOne(queryWrapper);if(susheEntity==null){sushe.setCreateTime(new Date());sushe.setSusheNumber(0);susheService.insert(sushe);return R.ok();}else {return R.error(511,"表中已有楼栋:"+building+",单元:"+unit+",房间号:"+room+"的房间");}}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody SusheEntity sushe, HttpServletRequest request){logger.debug("update方法:,,Controller:{},,sushe:{}",this.getClass().getName(),sushe.toString());String building = sushe.getBuilding();String unit = sushe.getUnit();String room = sushe.getRoom();Wrapper<SusheEntity> queryWrapper = new EntityWrapper<SusheEntity>().notIn("id",sushe.getId()).eq("building", building).eq("unit", unit).eq("room", room);logger.info("sql语句:"+queryWrapper.getSqlSegment());SusheEntity susheEntity = susheService.selectOne(queryWrapper);if(susheEntity==null){susheService.updateById(sushe);//根据id更新return R.ok();}else {return R.error(511,"表中已有楼栋:"+building+",单元:"+unit+",房间号:"+room+"的房间");}}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Integer[] ids){logger.debug("delete:,,Controller:{},,ids:{}",this.getClass().getName(),ids.toString());if(ids != null && ids.length>0){susheService.deleteBatchIds(Arrays.asList(ids));susheYonghuService.delete(new EntityWrapper<SusheYonghuEntity>().in("sushe_id", Arrays.asList(ids)));}return R.ok();}}

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

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

相关文章

wpf prism左侧抽屉式菜单

1.首先引入包MaterialDesignColors和MaterialDesignThemes 2.主页面布局 左侧菜单显示在窗体外&#xff0c;点击左上角菜单图标通过简单的动画呈现出来 3.左侧窗体外菜单 <Grid x:Name"GridMenu" Width"150" HorizontalAlignment"Left" Ma…

鸿蒙原生应用元服务开发-WebGL网页图形库开发概述

WebGL的全称为Web Graphic Library(网页图形库)&#xff0c;主要用于交互式渲染2D图形和3D图形。目前HarmonyOS中使用的WebGL是基于OpenGL裁剪的OpenGL ES&#xff0c;可以在HTML5的canvas元素对象中使用&#xff0c;无需使用插件&#xff0c;支持跨平台。WebGL程序是由JavaScr…

解读:DUSt3R: Geometric 3D Vision Made Easy

概述&#xff1a;给定一个无约束图像集&#xff0c;即一组具有未知相机姿态和内在特征的照片&#xff0c;我们提出的 DUSt3R 方法会输出一组相应的点阵图&#xff0c;从中我们可以直接恢复通常难以一次性估算的各种几何量&#xff0c;如相机参数、像素对应关系、深度图和完全一…

【PCIe】 PCIe 拓扑结构与分层结构

&#x1f525;博客主页&#xff1a;PannLZ 文章目录 PCIe拓扑结构PCIe分层结构 PCIe拓扑结构 计算机网络中的拓扑结构源于拓扑学(研究与大小、形状无关的点、线关系的方法)。 把网络中的计算机和通信设备抽象为一个点&#xff0c;把传输介质抽象为一条线&#xff0c;由点和线组…

【物联网】stm32芯片结构组成,固件库、启动过程、时钟系统、GPIO、NVIC、DMA、UART以及看门狗电路的全面详解

一、stm32的介绍 1、概述 stm32: ST&#xff1a;指意法半导体 M&#xff1a;指定微处理器 32&#xff1a;表示计算机处理器位数 与ARM关系:采用ARM推出cortex-A&#xff0c;R,M三系中的M系列&#xff0c;其架构主要基于ARMv7-M实现 ARM分成三个系列&#xff1a; Cortex-A&…

【排序算法】推排序算法解析:从原理到实现

目录 1. 引言 2. 推排序算法原理 3. 推排序的时间复杂度分析 4. 推排序的应用场景 5. 推排序的优缺点分析 5.1 优点&#xff1a; 5.2 缺点&#xff1a; 6. Java、JavaScript 和 Python 实现推排序算法 6.1 Java 实现&#xff1a; 6.2 JavaScript 实现&#xff1a; 6.…

K8S之实现业务的金丝雀发布

如何实现金丝雀发布 金丝雀发布简介优缺点在k8s中实现金丝雀发布 金丝雀发布简介 金丝雀发布的由来&#xff1a;17 世纪&#xff0c;英国矿井工人发现&#xff0c;金丝雀对瓦斯这种气体十分敏感。空气中哪怕有极其微量的瓦斯&#xff0c;金丝雀也会停止歌唱&#xff1b;当瓦斯…

【JS逆向学习】猿人学 第五题 js混淆 乱码

逆向目标 网址&#xff1a;https://match.yuanrenxue.cn/match/5接口&#xff1a;https://match.yuanrenxue.cn/api/match/5?page2&m1709806560791&f1709806560000参数&#xff1a; Cookie(m、RM4hZBv0dDon443M)payload(m、f) 逆向过程 老规矩&#xff0c;上来先分…

第24集《灵峰宗论导读》

请大家打开讲义第79面。 在第一段呢蕅益大师先讲到这个诸法实相的妙理&#xff0c;说从我们现前一念心性来观察诸法实相有两个角度&#xff1a; 第一个角度呢就是当我们摄用归体的时候&#xff0c;所谓万法唯识一心的时候&#xff0c;这个时候我们会发觉三世诸佛&#xff0c;…

vue实现文字手工动态打出效果

vue实现文字手工动态打出效果 问题背景 本文实现vue中&#xff0c;动态生成文字手动打出效果。 问题分析 话不多说&#xff0c;直接上代码&#xff1a; <template><main><button click"makeText"><p class"text">点击生成内容…

启动vue项目执行npm run serve报错 : error in ./src/element-variables.scss

error in ./src/element-variables.scss 问题原因 node-sass的版本问题 解决方式 我直接更新了一下node-sass&#xff0c;就好了 npm install node-sass 再次执行就可以执行成功了

如何设置WhatsApp Business账号?

WhatsApp Business是WhatsApp为企业打造的一款应用程序&#xff0c;旨在帮助企业与客户更轻松地互动。如果您是一家出海企业&#xff0c;想要更好地与客户沟通&#xff0c;那么WhatsApp Business账号是您不可或缺的工具。 以下是设置WhatsApp Business账号的步骤&#xff1a; …

AIGC绘画关键词 - 写实少女

Unity3D特效百例案例项目实战源码Android-Unity实战问题汇总游戏脚本-辅助自动化Android控件全解手册再战Android系列Scratch编程案例软考全系列Unity3D学习专栏蓝桥系列ChatGPT和AIGC &#x1f449;关于作者 专注于Android/Unity和各种游戏开发技巧&#xff0c;以及各种资源分…

MongoDB黑窗口操作(CRUD)

目录 连接数据库 插入数据 for循环插入数据 根据条件查询 修改数据 删除数据 连接数据库 对应路径下cmd中输入命令mongo即可 插入数据 j{name:"mongo"} t{x:3} 提交&#xff1a;db.things.svae(j);db.things.svae(t); 查询&#xff1a;db.things.find(); …

Java面试挂在线程创建后续,不要再被八股文误导了!创建线程的方式只有1种

线程创建之源 OK&#xff01;咱们闲话少叙&#xff0c;直接进入正题&#xff0c;回顾一下通过实现Runnable接口&#xff0c;重写run方法创建线程的方式&#xff0c;真的可以创建一个线程吗&#xff1f;来看下面这段demo。 【代码示例1】 public class Test implements Runnab…

信号处理--使用CNN+LSTM实现单通道脑电信号EEG的睡眠分期评估

目录 背景 亮点 环境配置 数据 方法 结果 代码获取 参考文献 背景 睡眠对人体健康很重要。监测人体的睡眠分期对于人体健康和医疗具有重要意义。 亮点 架构在第一层使用两个具有不同滤波器大小的 CNN 和双向 LSTM。 CNN 可以被训练来学习滤波器&#xff0c;以从原始…

redis缓存(穿透, 雪崩, 击穿, 数据不一致, 数据并发竞争 ), 分布式锁(watch乐观锁, setnx, redission)

redis的watch缓存机制 WATCH 机制原理&#xff1a; WATCH 机制&#xff1a;使用 WATCH 监视一个或多个 key , 跟踪 key 的 value 修改情况&#xff0c;如果有key 的 value 值在事务 EXEC 执行之前被修改了&#xff0c;整个事务被取消。EXEC 返回提示信息&#xff0c;表示 事务已…

Linux安装,配置,启动HBase

Linux安装&#xff0c;配置&#xff0c;启动HBase 一、HBase安装&#xff0c;配置 1、下载HBase安装包 Hbase官方下载地址: http://archive.apache.org/dist/hbase 选择相应的版本点击下载&#xff0c;这里以2.3.5为例 # linux可以通过wget命令下载 wget https://archive…

Windows11安装FFmpeg最新版本

打开终端: 输入 winget install ffmpeg 然后输入 Y 回车后出现如下图: 正在下载FFmpeg 6.1 安装成功 测试

STM32CubeIDE基础学习-STM32CubeIDE软件配置下载器方法

STM32CubeIDE基础学习-STM32CubeIDE软件配置下载器方法 文章目录 STM32CubeIDE基础学习-STM32CubeIDE软件配置下载器方法前言第1章 配置ST-LINK下载器第2章 配置DAP下载器总结 前言 这个软件编译完之后&#xff0c;可以使用下载器进行在线下载程序或仿真调试程序&#xff0c;也…