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芯片开发光刻机
半导体技术突破
2
文件名:【Spring Security】UserDetailsService 接口介绍,泡泡手机网
【Spring Security】UserDetailsService 接口介绍
文章目录 UserDetailsService 介绍UserDetailsService 具体操作UserDetailsService 方法介绍 UserDetailsService 介绍
同类推荐
-

【Q4-20min】,360ak47(50℃,60.97mpa由0.401)
查看 -

【QT 网络云盘客户端】——登录界面功能的实现,三星s5820怎么样
查看 -

【QT】仿函数,k750i(基于qt的仿真)
查看 -

【Qt之QString】去除“字符“或替换“字符“小技巧,3g泡泡
查看 -

【Qt学习】05:自定义封装界面类,product.pcpop.com(qt封装自定义控件)
查看 -

【Qt开发流程】之拖放操作1-介绍,geak eye
查看 -

【ROS】Ubuntu20.04+ROS Noetic 配置PX4-v1.12.2和Gazebo11联合仿真环境【教程】,pcpop网
查看 -

【RabbitMQ】Linux系统服务器安装RabbitMQ,多普达m700(多普达windows)
查看 -

【RabbitMQ】golang客户端教程1——HelloWorld,天语w806怎么样
查看