基于SSM实现的通用权限管理系统项目

1 概述 这是一个通用权限管理系统项目,基于SSM(Spring + Spring-MVC +Mybatis)框架开发,其SQL语句持久在Hibernate 中

本文包含相关资料包-----> 点击直达获取<-------

1 概述

这是一个通用权限管理系统项目,基于SSM(Spring + Spring-MVC +Mybatis)框架开发,其SQL语句持久在Hibernate 中,对原生SQL的支持较好。制作该系统的初衷是用来帮助JavaWeb开发者或初学者学习、借鉴的需要。读者可以在这个 系统基础上引入其它技术或完全依赖本系统技术进行功能拓展,来开发实际应用需求的项目,免去了应用系统中对于" 权限设计"这一部分的麻烦。

2 技术

Jsp 、SSM(Spring + Spring-MVC + Mybatis)、Shiro 、Mvc、Jdbc、MySQL、DWZ富客户端框架 + Jquery + Ajax

3 环境

JDK:JDK1.6+

WEB:Tomcat6.0+

DB:MySQL5+

IDE: MyEclipse8.5+/Eclipse4.4+

4 工程结构

5 运行截图

登录界面

员工管理界面

部门管理界面

角色管理界面

6 主要代码

员工部门管理

package com.kzfire.portal.action.user;

import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

import com.kzfire.portal.base.BaseAction;
import com.kzfire.portal.entiy.SysDept;
import com.kzfire.portal.service.DeptService;
import com.kzfire.portal.service.UserService;
import com.kzfire.portal.utils.JSONUtils;
import com.kzfire.portal.utils.VoFactory;
import com.kzfire.portal.vo.ConditionVo;

@RequestMapping("/user/dept")
@Controller
public class DeptAction extends BaseAction{
 @Autowired
 DeptService deptService;
 @Autowired
 UserService userService;

 /**
  * 设置员工部门
  * @param model
  * @param request
  * @param response
  * @return
  */
 @RequestMapping("/setUserDept")
 public String setUserDept(Model model,HttpServletRequest request,HttpServletResponse response) {

  String userId=request.getParameter("userId");
  model.addAttribute("userId", userId);
  //设置部门树
  List<SysDept> list=deptService.getAllDept();
  model.addAttribute("data", JSONUtils.parseList(list));
  return VIEW+"user/dept/setUserDept";
 }

 @RequestMapping("/saveUserdept")
 public ModelAndView saveUserdept(Model model, HttpServletRequest request,
   HttpServletResponse response) {
  try {
   Integer userId=Integer.parseInt(request.getParameter("userId"));
   Integer deptId=Integer.parseInt(request.getParameter("deptId"));
   deptService.saveUserdept(userId,deptId);
  } catch (Exception e) {
   e.printStackTrace();
   return ajaxDoneError("操作失败:"+e.getMessage());
  }
  return ajaxDoneSuccess("操作成功");
 }

 @RequestMapping("/main")
 public String list(Model model,HttpServletRequest request,HttpServletResponse response) {
  //设置部门树
  List<SysDept> list=deptService.getAllDept();
  System.out.println("json格式----->"    + JSONUtils.parseList(list).toString() );
  model.addAttribute("data", JSONUtils.parseList(list));
  return VIEW+"user/dept/dept";
 }

 @RequestMapping("/userList")
 public String userList(Model model,HttpServletRequest request,HttpServletResponse response) {
  ConditionVo cvo=VoFactory.getConditionVo(request);
  String deptId=request.getParameter("deptId");
  if("1".equals(deptId))
  {
   cvo.setText4("1");
  }else
  {
   cvo.setText3(request.getParameter("deptId"));
  }
  request.setAttribute("deptId", deptId);
  cvo.setTotalCount(userService.getUserCount(cvo));
  model.addAttribute("vo", cvo);
  model.addAttribute("list", userService.getList(cvo));
  return VIEW+"user/dept/userList";
 }

 @RequestMapping("/add")
 public String add(Model model,HttpServletRequest request,HttpServletResponse response) {
  SysDept dept=new SysDept();
  dept.setPid(Integer.parseInt(request.getParameter("selDept")));
  model.addAttribute("dept", dept);
  return VIEW+"user/dept/deptEdit";
 }
 @RequestMapping("/edit")
 public String edit(Model model,HttpServletRequest request,HttpServletResponse response) {
  SysDept dept=deptService.getDeptById(Integer.parseInt(request.getParameter("selDept")));
  model.addAttribute("dept", dept);
  return VIEW+"user/dept/deptEdit";
 }

 @RequestMapping("/del")
 public ModelAndView del(Model model, HttpServletRequest request)
 {
  try {
   String deptId=request.getParameter("selDept");
   deptService.delDeptById(Integer.parseInt(deptId));
  } catch (Exception e) {
   e.printStackTrace();
   return ajaxDoneError("操作失败:"+e.getMessage());
  }
  return ajaxDoneSuccess("操作成功");
 }

 @RequestMapping("/save")
 public ModelAndView save(SysDept dept,Model model, HttpServletRequest request,
   HttpServletResponse response) {
  try {
   if(dept!=null)
   {
    deptService.saveDept(dept);
   }
  } catch (Exception e) {
   e.printStackTrace();
   return ajaxDoneError("操作失败:"+e.getMessage());
  }
  return ajaxDoneSuccess("操作成功");
 }
}

角色管理

package com.kzfire.portal.action.user;

import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

import com.kzfire.portal.base.BaseAction;
import com.kzfire.portal.entiy.SysRole;
import com.kzfire.portal.service.RoleService;
import com.kzfire.portal.utils.VoFactory;
import com.kzfire.portal.vo.ConditionVo;
import com.kzfire.portal.vo.PerGroupVo;

@RequestMapping("/user/role")
@Controller
public class RoleAction extends BaseAction{
 @Autowired
 RoleService roleService;

 @RequestMapping("/list")
 public String list(Model model,HttpServletRequest request,HttpServletResponse response) {
  ConditionVo cvo=VoFactory.getConditionVo(request);
  cvo.setTotalCount(roleService.getTableCount("sys_role"));
  model.addAttribute("vo", cvo);
  model.addAttribute("list", roleService.getList(cvo));
  return VIEW+"permission/role/list";
 }

 /**
  * 权限编辑页面
  * @param model
  * @param request
  * @return
  */
 @RequestMapping("/editPermission")
 public String editPermission(Model model, HttpServletRequest request)
 {
  String roleId=request.getParameter("roleId");
  //获取角色权限
  List<PerGroupVo> group=roleService.getPerGroupVoByUserId(Integer.parseInt(roleId));
  model.addAttribute("group", group);
  model.addAttribute("roleId", roleId);
  return VIEW+"permission/role/editPermission";
 }

 @RequestMapping("/savePer")
 public ModelAndView savePer(Model model, HttpServletRequest request,
   HttpServletResponse response) {
  try {
   String[] perIds=request.getParameterValues("perId");
   roleService.savePermission(perIds,Integer.parseInt(request.getParameter("roleId")));
  } catch (Exception e) {
   e.printStackTrace();
   return ajaxDoneError("操作失败");
  }

  return ajaxDoneSuccess("操作成功");
 }

 @RequestMapping("/add")
 public String add(Model model, HttpServletRequest request)
 {
  model.addAttribute("role", new SysRole());
  return VIEW+"permission/role/roleEdit";
 }




 @RequestMapping("/edit")
 public String edit(Model model, HttpServletRequest request)
 {
  String roleId=request.getParameter("roleId");
  SysRole role=roleService.getRoleById(Integer.parseInt(roleId));
  model.addAttribute("role", role);
  return VIEW+"permission/role/roleEdit";
 }




 @RequestMapping("/del")
 public ModelAndView del(Model model, HttpServletRequest request)
 {
  try {
   String roleId=request.getParameter("roleId");
   roleService.delRoleById(Integer.parseInt(roleId));
  } catch (Exception e) {
   e.printStackTrace();
   return ajaxDoneError("操作失败");
  }
  return ajaxDoneSuccess("操作成功");
 }

 @RequestMapping("/save")
 public ModelAndView save(SysRole role,Model model, HttpServletRequest request,
   HttpServletResponse response) {
  if(role!=null)
  {
   roleService.saveShop(role);
  }
  return ajaxDoneSuccess("操作成功");
 }


}

7 其它说明

1、MySQL数据库账户

MySQL数据库默认端口:"3306"、数据库名:"kzfire"。

2、SQL文件

SQL文件放在"MySQL数据库SQL文件" 目录,需通过"Navicat for MySQL"工具执行此SQL文件。

3、系统启动文件

系统启动文件是"webroot"目录下的"login.jsp"。

4、系统登录用户名及密码

"login.jsp"启动(运行)后,正常情况下进入登录界面,用户名输入"admin",密码输入"123456"。如果登录不进去,很有可能是数据库参数配置问题导致,请检查数据库参数配置文件,数据库参数配置文件放。

8 源码下载

关注公众号【C you again】,回复"基于SSM框架的JavaWeb通用权限管理系统"下载源码。

说明:此源码来源于网络,若有侵权,请联系删除!!

参考文献

  • 通用企业级权限管理系统的分析与设计(北京邮电大学·常学文)
  • 通用权限管理系统研究与应用(电子科技大学·杨莹莹)
  • PCM项目管理系统设计与实现(吉林大学·张翰)
  • 物业管理诚信体系信息化平台的设计与建设(上海交通大学·贾琦)
  • 面向业务的应用支撑平台安全管理体系设计与实现(山东大学·阮静)
  • 基于OAuth2.0协议的企业分布式授权系统设计与实现(华中科技大学·支猛)
  • 基于OAuth2.0协议的企业分布式授权系统设计与实现(华中科技大学·支猛)
  • 基于工作流的项目管理系统的设计与实现(华中科技大学·袁晓军)
  • 基于.NET技术下Web应用的RBAC权限研究与应用(华南理工大学·王畅)
  • 面向中小企业的项目管理系统设计与开发(南京理工大学·王军)
  • 基于SSM框架的资质管理系统开发(首都经济贸易大学·田国兵)
  • 面向产品设计的PDM系统的设计与实现(大连理工大学·李功健)
  • 基于SAN的存储管理软件的设计与实现(西北工业大学·可彦)
  • 一种改进的权限管理框架的研究与应用(华中科技大学·杨靖)
  • 基于SAN的存储管理软件的设计与实现(西北工业大学·可彦)

本文内容包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主题。发布者:源码工厂 ,原文地址:https://bishedaima.com/yuanma/35674.html

相关推荐

  • SpringBoot+Thymeleaf+模拟数据库+一套后台模板

    SpringBoot+Thymeleaf+模拟数据库+一套后台模板 说在前面: 这个呢,是我最近在自学springboot时候做的一个小项目,目前还没有整合Mybatis框架
    2024年05月14日
    18 1 2
  • 基于springboot和mysql实现的在线考试系统

    基于springboot和mysql实现的在线考试系统 1,项目介绍 一个在线考试系统,考生可以注册,成为本平台的一个用户,然后进行考试,考完生成成绩,同时用户可以查询自己考试的试卷
    2024年05月14日
    18 1 4
  • 基于JSP和MySql的在线电子书商城

    基于JSP和MySql的在线电子书商城 1 引言 电子商务是指整个商务活动和贸易活动的电子化,它通过先进的信息网络,将事物活动和贸易活动中发生关系的各方有机地联系起来
    2024年05月14日
    9 1 1
  • 校园社团信息管理

    这是一个🔥🔥基于SpringBoot框架的校园社团信息管理设计与实现🔥🔥的项目源码,开发语言Java,框架使用的SpringBoot+vue技术,开发环境Idea/Eclipse
    2024年05月23日
    6 1 1
  • 基于springboot的停车场车位管理系统设计与实现

    在当今数字化社会中,停车场管理系统的设计与实现具有重要意义,随着城市化进程的不断加速,汽车数量的急剧增长,停车需求也日益增加,然而,传统的停车场管理方式往往效率低下,信息不透明
    2024年05月07日
    4 1 2
  • 基于Vue+SpringCloud博客的设计与实现

    基于Vue+SpringCloud博客的设计与实现 一,摘 要 博客是用来分享自己的心情和动态拉近人与人之间的距离,它改变了人们的在网上的交流方式
    2024年05月14日
    9 1 2
  • python短信轰炸程序

    短信轰炸 Python 程序(包含1000+有效接口) 前言 这是一个爬取网络上 在线轰炸的接口 ,后通过 Python 异步 请求接口以达到 手机短信轰炸 的目的
    2024年05月14日
    35 1 5
  • 基于SpringBoot框架的电商平台

    这是一套采用Java编程语言,基于SpringBoot框架构建的电商系统源代码,该项目融入了Vue技术,开发工具为Idea或Eclipse,该系统核心功能涵盖商品销售与在线购物
    2024年05月23日
    7 1 1
  • 图像去雾Python

    图像去雾 一,总述 本次大作业要求调研实现去雾算法,发现其中的问题,并对算法进行改进, 我首先实现了基于暗原色先验的去雾算法,并从运算速度和去雾效果方面进行了一定的改进
    2024年05月14日
    3 1 1
  • python 打造贪吃蛇超详细教程

    python 打造贪吃蛇超详细教程 在家闲着没妹子约, 刚好最近又学了一下 python,听说 pygame 挺好玩的,今天就在家研究一下, 弄了个贪吃蛇出来
    2024年05月14日
    4 1 1

发表回复

登录后才能评论