springboot项目案例——人事管理系统(后端代码)涉及权限、登录验证

数据库表:

  1. 用户表主要字段:用户id、用户名、密码、管理员类型(0:普通管理员1:超级管理员),用户只有两种身份,超级管理员与普通管理员(超级管理员拥有所有权限,而普通管理员的权限由超级管理员赋予)
  2. 部门表主要字段:部门id、部门名称、最大人数、当前人数
  3. 雇员表主要字段:雇员id、部门id、用户id、职位等级id、姓名、基本工资、佣金、雇佣日期、在职标记(0:在职1:离职)、简介
  4. 职位表主要字段:职位id、最低工资、最高工资、名称
  5. 权限表主要字段:权限id、权限名称(主要添加各个模块信息,哪个用户绑定了哪些模块就可以操作哪些模块)
  6. 用户与权限关系表主要字段:用户id、权限id
  7. 雇员日志表主要字段:日志id、雇员id、部门id、用户id、职位id、基本工资、佣金、备注、在职标记、创建时间、更新时间(主要是记录每个员工的添加、修改、离职记录)

主要模块: 用户管理(管理员模块)、部门管理、员工管理(项目核心部分),整个项目不允许出现删除操作

用户管理:拿几个功能列出

        1、用户登录:主要需要把登录用户的tokenUser缓存进redis中以供后续一系列操作验证,当然tokenUser也需要返回给前端(业务逻辑层代码)

 TokenUser实体类字段:

        2:新增管理员:该功能需要注意登录用户是否是超级管理员(1),只有超级管理员才能调用此接口,其次需要给新增的管理员赋权

         3:退出登录:只需根据sessionId删除redis中的key即可

接下来就是登录身份验证了,核心代码如下:

 

如果说sessionId不为null的话就从redis中获取登录用户信息: 

 

至此就完成了,第一次写,哪里有不对的地方请指出

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单的SpringBoot项目案例,该项目实现了一个简单的RESTful API,用于管理学生信息: 1.创建SpringBoot项目 首先,我们需要创建一个SpringBoot项目。可以使用Spring Initializr(https://start.spring.io/)来创建一个基本的SpringBoot项目,也可以使用IDE(如IntelliJ IDEA或Eclipse)来创建。 2.添加依赖 在pom.xml文件中添加以下依赖: ```xml <dependencies> <!-- Spring Web --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- Spring Data JPA --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <!-- H2 Database --> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>runtime</scope> </dependency> </dependencies> ``` 这些依赖将帮助我们构建一个基本的Web应用程序,并使用JPA和H2数据库。 3.创建实体类 创建一个名为Student的实体类,该类包含id、name和age属性: ```java @Entity public class Student { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name; private Integer age; // getters and setters } ``` 4.创建Repository 创建一个名为StudentRepository的接口,该接口继承自JpaRepository,并提供一些自定义方法: ```java @Repository public interface StudentRepository extends JpaRepository<Student, Long> { List<Student> findByName(String name); } ``` 5.创建Controller 创建一个名为StudentController的类,该类包含一些RESTful API: ```java @RestController @RequestMapping("/students") public class StudentController { @Autowired private StudentRepository studentRepository; @GetMapping("") public List<Student> getAllStudents() { return studentRepository.findAll(); } @GetMapping("/{id}") public Student getStudentById(@PathVariable Long id) { return studentRepository.findById(id).orElse(null); } @PostMapping("") public Student createStudent(@RequestBody Student student) { return studentRepository.save(student); } @PutMapping("/{id}") public Student updateStudent(@PathVariable Long id, @RequestBody Student student) { Student existingStudent = studentRepository.findById(id).orElse(null); if (existingStudent != null) { existingStudent.setName(student.getName()); existingStudent.setAge(student.getAge()); return studentRepository.save(existingStudent); } else { return null; } } @DeleteMapping("/{id}") public void deleteStudent(@PathVariable Long id) { studentRepository.deleteById(id); } @GetMapping("/search") public List<Student> searchStudents(@RequestParam String name) { return studentRepository.findByName(name); } } ``` 6.运行应用程序 现在,我们可以运行应用程序并测试RESTful API。可以使用Postman或类似的工具来测试API。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值