基于JAVA SSM springboot实现的抗疫物质信息管理系统设计和实现

🍅 作者主页:Java李杨勇 

🍅 简介:Java领域优质创作者🏆、【java李杨勇】公号作者✌  简历模板、学习资料、面试题库【关注我,都给你】

🍅文末获取源码联系🍅

 临近学期结束,还是毕业设计,你还在做java程序网络编程,期末作业,老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。这里,你想解决的问题,在下方专栏👇🏻👇🏻👇🏻👇🏻

❤️Java项目精品实战案例❤️

❤️web前端期末大作业网页实战❤️

 都能满足你的需求。原始Jsp、SSM、SpringBoot、以及HTML+CSS+JS页面设计, web大学生网页设计作业源码等等都可以参考得到解决。话不多说直接拿一个抗疫物质信息管理系统来举例

主要功能设计:

用户、区域、物质类型、物质详情、物质申请和审核以及我的申请和通知公告以及灵活控制菜单权限

                                                           

主要技术实现:spring、 springmvc、  springboot、springboot security权限框架  mybatis 、 jquery 、 md5 、bootstarp.js  tomcat、器、拦截器等

具体功能模块:用户模块、角色模块、菜单模块、部门模块以及灵活的权限控制,可控制到页面或按钮,满足绝大部分的权限需求

业务模块功能:区域管理、对不同区域的进行管理以及物质发放等、物质类型管理、物质详情管理、物质申请管理、物质审核管理、我的物质申请管理、以及系统通知公告查看等具体功能模块、以及修改密码退出等。

功能截图如下:

/*** .*****/package io.renren.modules.sys.controller;import com.google.code.kaptcha.Constants;
import com.google.code.kaptcha.Producer;
import io.renren.common.utils.R;
import io.renren.modules.sys.shiro.ShiroUtils;
import org.apache.shiro.authc.*;
import org.apache.shiro.subject.Subject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;import javax.imageio.ImageIO;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.awt.image.BufferedImage;
import java.io.IOException;/*** 登录相关** @author Mark s.com*/
@Controller
public class SysLoginController {@Autowiredprivate Producer producer;@RequestMapping("captcha.jpg")public void captcha(HttpServletResponse response)throws IOException {response.setHeader("Cache-Control", "no-store, no-cache");response.setContentType("image/jpeg");//生成文字验证码String text = producer.createText();//生成图片验证码BufferedImage image = producer.createImage(text);//保存到shiro sessionShiroUtils.setSessionAttribute(Constants.KAPTCHA_SESSION_KEY, text);ServletOutputStream out = response.getOutputStream();ImageIO.write(image, "jpg", out);}/*** 登录*/@ResponseBody@RequestMapping(value = "/sys/login", method = RequestMethod.POST)public R login(String username, String password, String captcha) {String kaptcha = ShiroUtils.getKaptcha(Constants.KAPTCHA_SESSION_KEY);if(!captcha.equalsIgnoreCase(kaptcha)){return R.error("验证码不正确");}try{Subject subject = ShiroUtils.getSubject();UsernamePasswordToken token = new UsernamePasswordToken(username, password);//md5+Jiayansubject.login(token);}catch (UnknownAccountException e) {return R.error(e.getMessage());}catch (IncorrectCredentialsException e) {return R.error("账号或密码不正确");}catch (LockedAccountException e) {return R.error("账号已被锁定,请联系管理员");}catch (AuthenticationException e) {return R.error("账户验证失败");}return R.ok();}/*** 退出*/@RequestMapping(value = "logout", method = RequestMethod.GET)public String logout() {ShiroUtils.logout();return "redirect:login.html";}}

用户首页超级管理员页面功能:

用户管理:每个模块对应的CRUD功能都是完善的

角色灵活设置权限:

菜单管理:

区域管理:

抗疫物质类型管理:

抗疫物质详情管理;

package io.renren.modules.sys.controller;import io.renren.common.utils.PageUtils;
import io.renren.common.utils.R;
import io.renren.modules.sys.entity.MatterApply;
import io.renren.modules.sys.service.MatterApplyService;
import io.renren.modules.sys.service.impl.MatterApplyServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;import java.util.Arrays;
import java.util.Date;
import java.util.Map;@RestController
@RequestMapping("/sys/matterApply")
public class MatterApplyController extends AbstractController {@Autowiredprivate MatterApplyService MatterApplyService;@AutowiredMatterApplyServiceImpl MatterApplyServiceImpe;@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params){PageUtils page = MatterApplyService.queryPage(params);return R.ok().put("page", page);}@RequestMapping("/AuditList")public R AuditList(@RequestParam Map<String, Object> params){params.put("applyStu","未审核");PageUtils page = MatterApplyService.queryPage(params);return R.ok().put("page", page);}@RequestMapping("/listByUser")public R listByUser(@RequestParam Map<String, Object> params){params.put("applyUserId",String.valueOf(getUserId()));PageUtils page = MatterApplyService.queryPage(params);return R.ok().put("page", page);}@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){MatterApply matterApply = MatterApplyService.getById(id);return R.ok().put("matterApply", matterApply);}@RequestMapping("/save")public R save(@RequestBody MatterApply matterApply){matterApply.setApplyTime(new Date());matterApply.setApplyUserId(getUserId());matterApply.setApplyStu("未审核");MatterApplyService.save(matterApply);return R.ok();}@RequestMapping("/update")public R update(@RequestBody MatterApply matterApply){MatterApplyService.updateById(matterApply);return R.ok();}@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){MatterApplyService.removeByIds(Arrays.asList(ids));return R.ok();}
}

用户申请抗疫物质:

管理员审核:

普通用户权限;

数据集设计ER图:

CREATE TABLE `NewTable` (
`user_id`  bigint(20) NOT NULL AUTO_INCREMENT ,
`username`  varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '用户名' ,
`password`  varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '密码' ,
`salt`  varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '盐' ,
`email`  varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '邮箱' ,
`mobile`  varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '手机号' ,
`status`  tinyint(4) NULL DEFAULT NULL COMMENT '状态  0:禁用   1:正常' ,
`dept_id`  bigint(20) NULL DEFAULT NULL COMMENT '部门ID' ,
`create_time`  datetime NULL DEFAULT NULL COMMENT '创建时间' ,
PRIMARY KEY (`user_id`),
UNIQUE INDEX `username` (`username`) USING BTREE 
)
ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8mb4 COLLATE=utf8mb4_general_ci
COMMENT='系统用户'
AUTO_INCREMENT=3
ROW_FORMAT=COMPACT
;

 获取完整源码:

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

打卡 文章 更新 79/  100天

 精彩专栏推荐:

Java毕设项目精品实战案例《100套》

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

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

相关文章

mysql注册slave_创建slave库?spm=a2c4e.11155472的搜索结果-阿里云开发者社区

云原生必备知识&#xff1a; 应用储存所属技术领域&#xff1a;云原生| 名词定义 |由于容器本身是非持久化的&#xff0c;因此需要解决在容器中运行应用程序遇到的一些问题。首先&#xff0c;当容器崩溃时&#xff0c;kubelet将重新启动容器&#xff0c;但是写入容器的文件将会…

基于java springmvc+mybatis学生考试系统设计和实现

&#x1f345; 作者主页&#xff1a;Java李杨勇 &#x1f345; 简介&#xff1a;Java领域优质创作者&#x1f3c6;、【java李杨勇】公号作者✌ 简历模板、学习资料、面试题库【关注我&#xff0c;都给你】 &#x1f345;文末获取源码联系&#x1f345; 临近学期结束&#xff…

java文件编译为class文件需要键入什么命令_cmd命令行 编译Java 文件

【问题引入】 很多时候,需要用到命令行来进行Java文件的编译。在用习惯了IDE 可能会不清楚如何在cmd命令行窗口进行编译,简单的都还好,带有包路径的可能会让很多人觉得有点小头疼。最近试了一下,发现了问题,就研究整理了一下记录吧。 【注1】环境准备, JDK,classpath 都…

基于JAVA springboot+mybatis智慧生活分享平台设计和实现

&#x1f345; 作者主页&#xff1a;Java李杨勇 &#x1f345; 简介&#xff1a;Java领域优质创作者&#x1f3c6;、Java李杨勇公号作者✌ 简历模板、学习资料、面试题库、技术互助【关注我&#xff0c;都给你】 &#x1f345; 欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f…

springboot自动装配的原理你能说出来吗?

SpringMvc和SpringBoot对比 首先我们回顾下原来搭建一个springmvc的hello-word的web项目&#xff08;xml配置的&#xff09;我们是不是要在pom中导入各种依赖&#xff0c;然后各个依赖有可能还会存在版本冲突需要各种排除。当你历尽千辛万苦的把依赖解决了&#xff0c;然后还需…

mysql sphinx 中文搜索_sphinx+mysql+mmseg 实现中文全站搜索 安装配置文档

一、Sphinx的特性高速的建立索引(在当代CPU上&#xff0c;峰值性能可达到10 MB/秒);高性能的搜索(在2 – 4GB 的文本数据上&#xff0c;平均每次检索响应时间小于0.1秒);可处理海量数据(目前已知可以处理超过100 GB的文本数据, 在单一CPU的系统上可处理100 M 文档);提供了优秀的…

基于javaweb宠物领养平台管理系统设计和实现

&#x1f345; 作者主页&#xff1a;Java李杨勇 &#x1f345; 简介&#xff1a;Java领域优质创作者&#x1f3c6;、【java李杨勇】公号作者✌ 简历模板、学习资料、面试题库【关注我&#xff0c;都给你】 &#x1f345;文末获取源码联系&#x1f345; 临近学期结束&#xff…

mysql 事务sqlserver_SQLServer数据库:事务与隔离级别实例讲解

本文主要向大家介绍了SQLServer数据库&#xff1a;事务与隔离级别实例讲解&#xff0c;通过具体的内容向大家展现&#xff0c;希望对大家学习SQLServer数据库有所帮助。上班途中&#xff0c;你在一处ATM机前停了下来。正当你在敲入密码的时候&#xff0c;你的一位家人也正在镇上…

基于 java springboot+mybatis二手物品网站系统设计和实现

&#x1f345; 作者主页&#xff1a;Java李杨勇 &#x1f345; 简介&#xff1a;Java领域优质创作者&#x1f3c6;、Java李杨勇公号作者✌ 简历模板、学习资料、面试题库、技术互助【关注我&#xff0c;都给你】 &#x1f345; 欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f…

AndroidStudio无法新建Java工程解决办法

我用的 AS 版本是 Android Studio Giraffe | 2022.3.1 Build #AI-223.8836.35.2231.10406996, built on June 29, 2023 以往新建工程都是 New project >> Empty Activity &#xff0c; 有个选择 Java 还是 Kotlin 语言的选项&#xff0c; 之后会默认生成一个 MainActi…

JAVA 从菜鸟成长为大牛的必经之路

在程序界流行着一种默认的说法叫“黄金5年”&#xff0c;也就是一个程序员从入职的时候算起&#xff0c;前五年的选择直接影响着整个职业生涯中的职业发展方向和薪资走向&#xff0c;如何走好这5年&#xff0c;彻底从一个刚入行的菜鸟蜕变成可以以不变应万变的职业大牛&#xf…

java set排序_Java Set排序的方法

Java Set排序的方法Set中TreeSet 本身就是有序的元素&#xff0c;那么下面重点介绍下HashSet的2种排序方法。1. 把HashSet保存在ArrayList里&#xff0c;再用Collections.sort()方法比较private void doSort(){final HashSet va new HashSet();va.add(2007111315);va.add(2007…

基于java springmvc+mybatis酒水商城管理系统设计和实现

&#x1f345; 作者主页&#xff1a;Java李杨勇 &#x1f345; 简介&#xff1a;Java领域优质创作者&#x1f3c6;、【java奥斯卡】公号作者✌ 简历模板、学习资料、面试题库【关注我&#xff0c;都给你】 &#x1f345;文末获取源码联系&#x1f345; 临近学期结束&#xff…

java date 一个月_java中的日期加一个月的计算

Homepage URLhttp://flysky-1.at.vwdhosting.netFTP server name:ftp://flysky-1ftp6.vwdhosting.net Login:flysky-1Password:k%x5WY(0zp? CSDN 论坛 http://www.csdn.net/ 中国最有名的技术论坛&#xff0c;《程序员》杂志就是他们出版的&#xff0c;你可以在上面提出问题&a…

基于java springboot+mybatis爱游旅行平台前台+后台设计实现

我剑最帅 不接受反驳 ​ 项目意义&#xff1a; 改革开放以来&#xff0c; 我国的旅游业发展迅速&#xff0c;但比较而言&#xff0c;我国旅游业发展的广度和深度都远远不能满足经济发展和人民生活水平提高的需要。 随着市场经济的发展和人民收入水平的进一步提高&#xff0c…

java多线程中出现的异常分别有哪些_java多线程试题

承Thread类4.线程的高度是指在单个CPU上以某种顺序运行多个线程5.多个线程并发执行时&#xff0c;各个线程中语句的执行顺序是确定的&#xff0c;但是线程之间的相对执行顺序是不确定的6.Java中的对象锁是一种独占的排他锁7.程序中可能出现一种情况&#xff1a;多个纯种互相等待…

《零基础》MySQL 超级入门教程

老规矩 先上镇楼图 MySQL简介 1、什么是数据库 &#xff1f; 数据库&#xff08;Database&#xff09;是按照数据结构来组织、存储和管理数据的仓库&#xff0c;它产生于距今六十多年前&#xff0c;随着信息技术和市场的发展&#xff0c;特别是二十世纪九十年代以后&#xff…

《零基础》MySQL 连接(四)

使用mysql二进制方式连接 实例 以下是从命令行中连接mysql服务器的简单实例&#xff1a; [roothost]# mysql -u root -p Enter password:****** 在登录成功后会出现 mysql> 命令提示窗口&#xff0c;你可以在上面执行任何 SQL 语句。 以上命令执行后&#xff0c;登录成…

java jbutton 禁用_java-禁用后对jButton执行的操作

我有使用Swing的示例代码.package playerlist;import java.awt.FlowLayout;import javax.swing.*;import java.awt.event.*;public class Sample extends JFrame{private JButton button1;private JButton button2;public Sample(){super();setTitle("Sample JFrame"…

《零基础》MySQL 创建数据库(五)

我们可以在登陆 MySQL 服务后&#xff0c;使用 create 命令创建数据库&#xff0c;语法如下: CREATE DATABASE 数据库名; 以下命令简单的演示了创建数据库的过程&#xff0c;数据名为 RUNOOB: [roothost]# mysql -u root -p Enter password:****** # 登录后进入终端mysq…