基于javaweb的SpringBoot智慧社区管理系统(java+springboot+mybaits+vue+elementui+mysql)

运行环境

Java≥8、MySQL≥5.7、Node.js≥14

开发工具

后端:eclipse/idea/myeclipse/sts等均可配置运行
前端:WebStorm/VSCode/HBuilderX等均可

❗没学过node.js的不要搞前后端分离项目

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

011125050706

031125050706

041125050706

051125050706

061125050706

071125050706

081125050706

091125050706

101125050706

111125050706

基于javaweb的SpringBoot智慧社区管理系统(java+springboot+mybaits+vue+elementui+mysql)

环境需要

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

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

3.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 

4.数据库:MySql 5.7/8.0版本均可;

5.是否Maven项目:是;

技术栈

后端:SpringBoot+Mybaits

前端:Vue + elementui

使用说明

项目运行:

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

  2. 使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令;

  3. 将项目中application.yml配置文件中的数据库配置改为自己的配置;

  4. 运行项目,在浏览器中输入地址:

前台地址:http://localhost:8080/springbootrpj39/front/index.html

后台地址

http://localhost:8080/springbootrpj39/admin/dist/index.html

管理员 abo 密码 abo

用户:用户1 密码: 123456

注意项目文件路径中不能含有中文、空格、特殊字符等,否则图片会上传不成功。

角色管理控制层:

/**

  • 角色处理控制器层

*/

@Controller

@RequestMapping(“/role”)

public class RoleController extends BaseController {

@Autowired

private ResultInfo resultInfo;

@Autowired

private RoleService roleService;

/**

  • 查询所有角色表的id和roleName

  • @return

*/

@GetMapping(“/findRoles”)

@ResponseBody

public List<Map<String, Object>> findRoles(@Nullable Integer id) {

return roleService.findRoles(id);

/**

  • 动态查询t_role表

  • @param roleQuery

  • @return

*/

@GetMapping(“/roleList”)

@ResponseBody

public Map<String, Object> selectByParams(RoleQuery roleQuery) {

return roleService.findRoleList(roleQuery);

/**

  • 角色视图首页

  • @return

*/

@GetMapping(“/index”)

public String toRolePage() {

return “role/role”;

/**

  • 新增/修改公用页面

  • @param roleId

  • @return

*/

@GetMapping(“/toAddAndUpdatePage”)

public String toAddAndUpdatePage(@Nullable Integer roleId, Model model) {

// 修改

if (roleId != null) {

Role role = roleService.selectByPrimaryKey(roleId);

AssertUtil.isTrue(role == null, “角色不存在”);

model.addAttribute(“role”, role);

return “role/addAndUpdateRole”;

/**

  • 新增角色

  • @param role

  • @return

*/

@RequestCode(“601001”)

@PostMapping(“/addRole”)

@ResponseBody

public ResultInfo addRole(Role role) {

roleService.addRole(role);

resultInfo.setAll(200, “新增角色成功”, null);

return resultInfo;

/**

  • 修改角色信息

  • @param role

  • @return

*/

@RequestCode(“601003”)

@PostMapping(“/updateRole”)

@ResponseBody

public ResultInfo updateRole(Role role) {

roleService.updateRole(role);

resultInfo.setAll(200, “修改角色成功”, null);

return resultInfo;

/**

  • 批量删除角色

  • @param ids

  • @return

*/

@RequestCode(“601004”)

@PostMapping(“/deleteRole”)

@ResponseBody

public ResultInfo updateRole(@RequestParam(“ids”) Integer[] ids) {

roleService.deleteRoles(ids);

resultInfo.setAll(200, “删除角色成功”, null);

return resultInfo;

 登录管理控制层:

/**

  • 登录控制器

*/

@Controller

@RequestMapping(“/login”)

public class LoginController {

@Autowired

private IndexController indexController;

@Autowired

private LoginServiceI loginServiceI;

/**

  • 入口,跳转登录页面

  • @return

*/

@GetMapping(“/toLogin”)

public String toLogin() {

return “login/login”;

/**

  • 默认入口,如果登录则跳转到indnex.jsp,如果没登录则跳转登录页面

  • @param user

  • @param session

  • @param model

  • @return

*/

@PostMapping(“”)

public String login(User user, HttpSession session, Model model) {

UserExpand info = loginServiceI.getUserLoginInfo(user);

if (null != info) {

session.setAttribute(“LOGIN_USER”, info);

return “redirect:/index”;

model.addAttribute(“msg”, “error”);

return “login/login”;

/**

  • 登出

  • @param session

  • @return

*/

@GetMapping(“/logout”)

@ResponseBody

public Boolean logout(HttpSession session) {

session.removeAttribute(“LOGIN_USER”);

return true;

用户管理控制层:

/**

  • User控制器类

*/

@Controller

@RequestMapping(“/user”)

public class UserController extends BaseController {

private Logger logger = LoggerFactory.getLogger(UserController.class);

@Autowired

private UserService userService;

@Autowired

private ResultInfo resultInfo;

/**

  • 登录

  • @param userName

  • @param password

  • @return

*/

@PostMapping(“/login”)

@ResponseBody

public ResultInfo findUserByName(@Nullable String userName,@Nullable String password) {

Map<String, String> user = userService.findUserByName(userName, password);

// 将结果封装到ResultInfo中

resultInfo.setAll(200, “登陆成功”, user);

logger.info(“user:{}”,user);

logger.info(“resultInfo:{}”,resultInfo);

return resultInfo;

@GetMapping(“/toUpdateCurrentPage”)

public String toUpdateCurrentPage(HttpServletRequest request, Model model) {

// 获取userId

int userId = LoginUserUtil.releaseUserIdFromCookie(request);

model.addAttribute(“userModel”, userService.selectByPrimaryKey(userId));

return “user/addAndUpdateUser”;

/**

  • 跳转到修改密码页面

  • @return

*/

@GetMapping(“/updatePWDPage”)

public String updatePasswordPage() {

return “user/password”;

/**

  • 修改密码操作

  • @param request

  • @param oldPWD

  • @param newPWD

  • @param checkPWD

  • @return

*/

@PostMapping(“/updatePWD”)

@ResponseBody

public ResultInfo updatePassword(HttpServletRequest request

,String oldPWD,String newPWD,String checkPWD) {

int userId = LoginUserUtil.releaseUserIdFromCookie(request);

userService.updatePassword(userId, oldPWD, newPWD, checkPWD);

resultInfo.setAll(200, “修改成功”, null);

logger.info(“resultInfo:{}”,resultInfo);

return resultInfo;

/**

  • 登出操作

  • @param request

  • @return

*/

@GetMapping(“/logout”)

public String logout(HttpServletRequest request) {

// 获取userId

int userId = LoginUserUtil.releaseUserIdFromCookie(request);

// 登录状态

if (userId != -1) {

// 删除session,回到登录页面

if (request.getSession().getAttribute(“user”) != null) {

// 不为空则删除session

request.getSession().removeAttribute(“user”);

return “redirect:/index”;

// ***

// 以下为用户权限管理相关操作

// ***

/**

  • 查询用户列表数据

  • @param userQuery

  • @return

*/

@GetMapping(“/userList”)

@ResponseBody

public Map<String, Object> selectByParams(UserQuery userQuery) {

return userService.selectByParams(userQuery);

/**

  • 跳转到用户管理首页

  • @return

*/

@GetMapping(“/index”)

public String index() {

return “user/user”;

/**

  • 跳转到用户管理新增/修改页面

  • @param id

  • @return

*/

@GetMapping(“/toAddUserPage”)

public String toAddUserPage(@Nullable Integer id, Model model) {

// id不为null表示访问的是修改页面

if (id != null) {

model.addAttribute(“userModel”,userService.selectByPrimaryKey(id));

return “user/addAndUpdateUser”;

/**

  • 新增用户

  • @param user

  • @param roleIds

  • @return

*/

@PostMapping(“/addUser”)

@ResponseBody

public ResultInfo addUser(User user, @RequestParam(“roleIds”) Integer[] roleIds) {

userService.addUser(user, roleIds);

resultInfo.setAll(200, “新增用户成功”, null);

return resultInfo;

/**

  • 修改用户信息

  • @param user

  • @param roleIds

  • @return

*/

@PostMapping(“/updateUser”)

@ResponseBody

public ResultInfo updateUser(User user, @RequestParam(“roleIds”) Integer[] roleIds) {

userService.updateUser(user, roleIds);

resultInfo.setAll(200, “修改用户成功”, null);

return resultInfo;

/**

  • 批量删除用户

  • @param ids

  • @return

*/

@PostMapping(“/deleteUsers”)

@ResponseBody

public ResultInfo deleteUsers(@RequestParam(“ids”) Integer[] ids) {

userService.deleteUsers(ids);

resultInfo.setAll(200, “删除用户成功”, null);

return resultInfo;


项目链接:
https://javayms.github.io?id=021125140706201rm
https://javayms.pages.dev?id=021125140706201rm