1.專案內容
本專案利用IDEA,Visual Studio Code 開發工具,借助Mysql,Navicat for MySQL 工具,實現了一個基於springboot vue的垃圾分類管理系統。系統為兩種類型的使用者提供服務,使用者和管理員。
2.實作功能
(1)登陸功能
#透過和資料庫建立聯繫後,資料庫內的使用者和管理員可在登入頁面輸入帳號和密碼登陸網頁。
(2)資料的增、查、改、刪除功能
① 垃圾的增、查、改、刪除
② 管理員的增、查、改、刪
③ 用戶的增、查、改、刪
(3)透過餅狀圖,長條圖可顯示用戶的性別比例,入庫垃圾的數量信息,用戶總數,管理員總數,入庫垃圾數量,查詢次數等。
1.前端登陸介面
<template> <div class="login-wrap"> <div class="ms-title">垃圾分类信息管理系统</div> <div class="ms-login"> <el-form :model="ruleForm" :rules="rules" ref="ruleForm"> <el-form-item prop="username"> <el-input v-model="ruleForm.username" placeholder="用户名"></el-input> </el-form-item> <el-form-item prop="password"> <el-input type="password" v-model="ruleForm.password" placeholder="密码"></el-input> </el-form-item> <div class="login-btn"> <el-button type="primary" @click="submitForm">登录</el-button> </div> </el-form> </div> </div> </template> <script> import {mixin} from "../mixins/index"; import {getLoginStatus} from "../api/index"; export default { mixins:[mixin], data: function(){ return { ruleForm:{ username: "admin", password: "123" }, rules:{ username:[ {required:true,message:"请输入用户名",trigger:"blur"} ], password:[ {required:true,message:"请输入密码",trigger:"blur"} ] } }; }, methods:{ submitForm(){ let params = new URLSearchParams(); params.append("name",this.ruleForm.username); params.append("password",this.ruleForm.password); getLoginStatus(params) .then((res) =>{ if(res.code == 1){ this.$router.push("/Info"); this.notify("登录成功","success"); }else{ this.notify("登录失败","error"); } }); } } } </script>
2.增刪改查實作
(1)管理員資訊增刪改查:
/** * 添加管理员 **/ @RequestMapping(value = "/add",method = RequestMethod.POST) public Object addAdminGuanli(HttpServletRequest request){ JSONObject jsonObject = new JSONObject(); String name = request.getParameter("name").trim(); String username = request.getParameter("username").trim(); String password = request.getParameter("password").trim(); String pic = request.getParameter("pic").trim(); String location = request.getParameter("location").trim(); String introduction = request.getParameter("introduction").trim(); //保存到管理员的对象中 AdminGuanli adminGuanli = new AdminGuanli(); adminGuanli.setName(name); adminGuanli.setUsername(username); adminGuanli.setPassword(password); adminGuanli.setPic(pic); adminGuanli.setLocation(location); adminGuanli.setIntroduction(introduction); boolean flag = AdminGuanliService.insert(adminGuanli); if(flag){ jsonObject.put(Consts.CODE,1); jsonObject.put(Consts.MSG,"添加成功"); return jsonObject; } jsonObject.put(Consts.CODE,0); jsonObject.put(Consts.MSG,"添加失败"); return jsonObject; } /** * 修改管理员 **/ @RequestMapping(value ="/update",method = RequestMethod.POST) public Object updateAdminGuanli(HttpServletRequest request){ JSONObject jsonObject = new JSONObject(); String id = request.getParameter("id").trim(); String name = request.getParameter("name").trim(); String username = request.getParameter("username").trim(); String password = request.getParameter("password").trim(); String location = request.getParameter("location").trim(); String introduction = request.getParameter("introduction").trim(); //保存到管理员的对象中 AdminGuanli adminGuanli = new AdminGuanli(); adminGuanli.setId(Integer.parseInt(id)); adminGuanli.setName(name); adminGuanli.setUsername(username); adminGuanli.setPassword(password); adminGuanli.setLocation(location); adminGuanli.setIntroduction(introduction); boolean flag = AdminGuanliService.update(adminGuanli); if(flag){ jsonObject.put(Consts.CODE,1); jsonObject.put(Consts.MSG,"修改成功"); System.out.println("11111111111111111"); return jsonObject; } jsonObject.put(Consts.CODE,0); jsonObject.put(Consts.MSG,"修改失败"); return jsonObject; } /** * 删除管理员 **/ @RequestMapping(value ="/delete",method = RequestMethod.GET) public Object deleteAdminGuanli(HttpServletRequest request){ String id = request.getParameter("id").trim(); boolean flag = AdminGuanliService.delete(Integer.parseInt(id)); return flag; } /** * 查询管理员 **/ @RequestMapping(value ="/selectByPrimaryKey",method = RequestMethod.GET) public Object selectByPrimaryKey(HttpServletRequest request){ String id = request.getParameter("id").trim(); return AdminGuanliService.selectByPrimaryKey(Integer.parseInt(id)); } @RequestMapping(value ="/allAdminGuanli",method = RequestMethod.GET) public Object allAdminGuanli(HttpServletRequest request){ return AdminGuanliService.allAdminGuanli(); } @RequestMapping(value ="/AdminGuanliOfName",method = RequestMethod.GET) public Object AdminGuanliOfName(HttpServletRequest request){ String name = request.getParameter("name").trim(); return AdminGuanliService.AdminGuanliOfName("%"+name+"#"); } /** * 更新管理员图片 **/ @RequestMapping(value ="/updateAdminPic",method = RequestMethod.POST) public Object updateAdminPic(@RequestParam("file") MultipartFile avatorFile, @RequestParam("id")int id){ JSONObject jsonObject = new JSONObject(); if(avatorFile.isEmpty()){ jsonObject.put(Consts.CODE,0); jsonObject.put(Consts.MSG,"文件上传失败"); return jsonObject; } //文件名=当前时间到毫秒+原来文件名 String fileName = System.currentTimeMillis()+avatorFile.getOriginalFilename(); //文件路径 String filePath = System.getProperty("user.dir")+System.getProperty("file.separator")+"img" +System.getProperty("file.separator")+"AdminPic"; //如果文件路径不存在,新增该路径 File file1 = new File(filePath); if(file1.exists()){ file1.mkdir(); } //实际文件路径 File dest = new File(filePath+System.getProperty("file.separator")+fileName); //存储到数据库的相对文件地址 String storeAvatorPath = "/img/AdminPic/"+fileName; try { avatorFile.transferTo(dest); AdminGuanli adminGuanli = new AdminGuanli(); adminGuanli.setId(id); adminGuanli.setPic(storeAvatorPath); boolean flag = AdminGuanliService.update(adminGuanli); if(flag){ jsonObject.put(Consts.CODE,1); jsonObject.put(Consts.MSG,"上传成功"); jsonObject.put("pic",storeAvatorPath); return jsonObject; } jsonObject.put(Consts.CODE,0); jsonObject.put(Consts.MSG,"修改失败"); return jsonObject; } catch (IOException e) { jsonObject.put(Consts.CODE,0); jsonObject.put(Consts.MSG,"修改失败"+e.getMessage()); }finally { return jsonObject; } } }
(2)垃圾資訊增刪改查
/** * 添加垃圾信息 **/ @RequestMapping(value="/add",method= RequestMethod.POST) public Object addGarbage(HttpServletRequest request){ JSONObject jsonObject=new JSONObject(); String name=request.getParameter("name").trim(); String type=request.getParameter("type").trim(); String introduction=request.getParameter("introduction").trim(); //保存到垃圾信息的对象当中 Garbage garbage=new Garbage(); garbage.setName(name); garbage.setType(type); garbage.setIntroduction(introduction); boolean flag=GarbageService.insert(garbage); if(flag){ jsonObject.put(Consts.CODE,1); jsonObject.put(Consts.MSG,"添加成功"); return jsonObject; } jsonObject.put(Consts.CODE,0); jsonObject.put(Consts.MSG,"添加失败"); return jsonObject; } /** * 修改垃圾信息 **/ @RequestMapping(value = "/update",method = RequestMethod.POST) public Object updateGarbage(HttpServletRequest request){ JSONObject jsonObject=new JSONObject(); String id=request.getParameter("id").trim(); String name=request.getParameter("name").trim(); String type=request.getParameter("type").trim(); String introduction=request.getParameter("introduction"); //保存到垃圾信息的对象中去 Garbage garbage=new Garbage(); garbage.setId(Integer.parseInt(id)); garbage.setName(name); garbage.setType(type); garbage.setIntroduction(introduction); boolean flag=GarbageService.update(garbage); if(flag){ jsonObject.put(Consts.CODE,1); jsonObject.put(Consts.MSG,"修改成功"); return jsonObject; } jsonObject.put(Consts.CODE,0); jsonObject.put(Consts.MSG,"修改失败"); return jsonObject; } /** * 删除垃圾信息 **/ @RequestMapping(value = "/delete",method = RequestMethod.GET) public Object deleteGarbage(HttpServletRequest request){ String id=request.getParameter("id").trim(); boolean flag=GarbageService.delete(Integer.parseInt(id)); return flag; } /** * 查询垃圾信息 **/ @RequestMapping(value = "/allGarbage",method = RequestMethod.GET) public Object allGarbage(HttpServletRequest request){ return GarbageService.allGarbage(); } }
(3)用戶資訊增刪改查
/** * 添加用户 **/ @RequestMapping(value = "/add",method = RequestMethod.POST) public Object addUser(HttpServletRequest request){ JSONObject jsonObject = new JSONObject(); String name = request.getParameter("name").trim(); String username = request.getParameter("username").trim(); String password = request.getParameter("password").trim(); String sex = request.getParameter("sex").trim(); String pic = request.getParameter("pic").trim(); String birth = request.getParameter("birth").trim(); String location = request.getParameter("location").trim(); String contact = request.getParameter("contact").trim(); DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); Date birthDate = new Date(); try { birthDate = dateFormat.parse(birth); } catch (ParseException e) { e.printStackTrace(); } System.out.println(name); //保存到用户的对象中 User user=new User(); user.setName(name); user.setUsername(username); user.setPassword(password); user.setSex(new Byte(sex)); user.setPic(pic); user.setBirth(birthDate); user.setLocation(location); user.setContact(contact); boolean flag = UserService.insert(user); if(flag){ jsonObject.put(Consts.CODE,1); jsonObject.put(Consts.MSG,"添加成功"); return jsonObject; } jsonObject.put(Consts.CODE,0); jsonObject.put(Consts.MSG,"添加失败"); return jsonObject; } /** * 修改用户 **/ @RequestMapping(value ="/update",method = RequestMethod.POST) public Object updateUser(HttpServletRequest request){ JSONObject jsonObject = new JSONObject(); String id = request.getParameter("id").trim(); String name = request.getParameter("name").trim(); String username = request.getParameter("username").trim(); String password = request.getParameter("password").trim(); String sex = request.getParameter("sex").trim(); String pic = request.getParameter("pic").trim(); String birth = request.getParameter("birth").trim(); String location = request.getParameter("location").trim(); String contact = request.getParameter("contact").trim(); DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); Date birthDate = new Date(); try { birthDate = dateFormat.parse(birth); } catch (ParseException e) { e.printStackTrace(); } //保存到用户的对象中 User user=new User(); user.setId(Integer.parseInt(id)); user.setName(name); user.setPassword(password); user.setSex(new Byte(sex)); user.setPic(pic); user.setBirth(birthDate); user.setLocation(location); user.setContact(contact); boolean flag = UserService.update(user); if(flag){ jsonObject.put(Consts.CODE,1); jsonObject.put(Consts.MSG,"修改成功"); System.out.println("11111111111111111"); return jsonObject; } jsonObject.put(Consts.CODE,0); jsonObject.put(Consts.MSG,"修改失败"); return jsonObject; } /** * 删除用户 **/ @RequestMapping(value ="/delete",method = RequestMethod.GET) public Object deleteUser(HttpServletRequest request){ String id = request.getParameter("id").trim(); boolean flag = UserService.delete(Integer.parseInt(id)); return flag; } /** * 查询用户 **/ @RequestMapping(value ="/selectByPrimaryKey",method = RequestMethod.GET) public Object selectByPrimaryKey(HttpServletRequest request){ String id = request.getParameter("id").trim(); return UserService.selectByPrimaryKey(Integer.parseInt(id)); } @RequestMapping(value ="/allUser",method = RequestMethod.GET) public Object allUser(HttpServletRequest request){ return UserService.allUser(); } @RequestMapping(value ="/UserOfName",method = RequestMethod.GET) public Object UserOfName(HttpServletRequest request){ String name = request.getParameter("name").trim(); return UserService.userOfName("%"+name+"#"); } /** * 更新用户图片 **/ @RequestMapping(value ="/updateUserPic",method = RequestMethod.POST) public Object updateUserPic(@RequestParam("file") MultipartFile avatorFile, @RequestParam("id")int id){ JSONObject jsonObject = new JSONObject(); if(avatorFile.isEmpty()){ jsonObject.put(Consts.CODE,0); jsonObject.put(Consts.MSG,"文件上传失败"); return jsonObject; } //文件名=当前时间到毫秒+原来文件名 String fileName = System.currentTimeMillis()+avatorFile.getOriginalFilename(); //文件路径 String filePath = System.getProperty("user.dir")+System.getProperty("file.separator")+"img" +System.getProperty("file.separator")+"userPic"; //如果文件路径不存在,新增该路径 File file1 = new File(filePath); if(file1.exists()){ file1.mkdir(); } //实际文件路径 File dest = new File(filePath+System.getProperty("file.separator")+fileName); //存储到数据库的相对文件地址 String storeAvatorPath = "/img/userPic/"+fileName; try { avatorFile.transferTo(dest); User user = new User(); user.setId(id); user.setPic(storeAvatorPath); boolean flag = UserService.update(user); if(flag){ jsonObject.put(Consts.CODE,1); jsonObject.put(Consts.MSG,"上传成功"); jsonObject.put("pic",storeAvatorPath); return jsonObject; } jsonObject.put(Consts.CODE,0); jsonObject.put(Consts.MSG,"修改失败"); return jsonObject; } catch (IOException e) { jsonObject.put(Consts.CODE,0); jsonObject.put(Consts.MSG,"修改失败"+e.getMessage()); }finally { return jsonObject; } } }
3.解決跨域問題
public class WebMvcConfig implements WebMvcConfigurer { @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/**") .allowCredentials(true) /*访问是否需要验证*/ .allowedOriginPatterns("*") .allowedMethods("*"); } }三、功能示範1.跟隨前端網址造訪網頁 ################################ 2.登陸首頁###############3.查看垃圾訊息###############4.使用者管理頁面###### #########5.管理員管理頁面#############
以上是基於springboot+vue怎麼實現垃圾分類管理系統的詳細內容。更多資訊請關注PHP中文網其他相關文章!