UserDetailsService 在 Spring Security 中主要承担查询系统内用户、验证密码、封装用户信息和角色权限。大白话就是你写一个实现类实现 UserDetailsService 接口,在这个实现类中去查询数据库中的用户,并封装成一个实现了 UserDetails 接口的实体类模型。
UserDetailsService 具体操作 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;import com.security.mysql.dao.UserDao;import com.security.mysql.entity.UserEntity;import com.security.user.UserDetailsInfo;import lombok.extern.slf4j.Slf4j;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.security.core.userdetails.UserDetails;import org.springframework.security.core.userdetails.UserDetailsService;import org.springframework.security.core.userdetails.UsernameNotFoundException;import org.springframework.stereotype.Component;@Component@Slf4jpublic class UserDetailsServiceImpl implements UserDetailsService {// TODO 这里改成你自己的服务或者Dao查询@Autowiredprivate UserDao userDao;@Overridepublic UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {log.info("进入 loadUserByUsername ...");// TODO 查询系统内的用户LambdaQueryWrapper<UserEntity> wrapper = new LambdaQueryWrapper<>();wrapper.eq(UserEntity::getUsername, username);UserEntity userEntity = userDao.selectOne(wrapper);if (userEntity == null) {// 未查询到用户throw new RuntimeException("not find user");}// TODO 封装成实现了 UserDetails 接口的实体类模型return UserDetailsInfo.builder().id(userEntity.getId()).username(userEntity.getUsername()).password(userEntity.getPassword()).build();}} UserDetailsService 方法介绍 方法名作用UserDetails loadUserByUsername(String username)根据用户名加载用户信息 End【Spring Security】UserDetailsService 接口介绍,泡泡手机网
cpugpu芯片开发光刻机
半导体技术突破
7
文件名:【Spring Security】UserDetailsService 接口介绍,泡泡手机网
【Spring Security】UserDetailsService 接口介绍
文章目录 UserDetailsService 介绍UserDetailsService 具体操作UserDetailsService 方法介绍 UserDetailsService 介绍
同类推荐
-

【PTA-C语言】编程练习4 - 数组Ⅰ,酷派d08
查看 -

【QT】容器类的迭代,东芝as100(东芝kt as10)
查看 -

【QT】时间日期与定时器,x9.gs
查看 -

【RISC-V】RISC-V寄存器,DVD碟片 日本黄
查看 -

【RK3399 PCIE调试——硬件信息资源获取】,只有我最摇摆
查看 -

【RK3399Pro学习笔记】五、ROS与USB摄像头,三星st550(三星sdn550摄像头怎么接电脑)
查看 -

【RK3399Pro学习笔记】十一、ROS服务数据的定义与使用,富士f10(富士服务器rys说明书)
查看 -

【RK3399Pro学习笔记】十八、点亮LED灯(python、C语言、bash),hx1(点亮led灯的程序代码)
查看 -

【RPC】gRPC 安装及使用,heyjuliet
查看