java - 如何从数据输入字段中获取密码?
问题描述
WebSecurityConfig类
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
private UserService userSevice;
@Autowired
private PasswordEncoder passwordEncoder;
@Bean
public PasswordEncoder getPasswordEncoder() {
return new BCryptPasswordEncoder(8);
}
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/", "/registration", "/static/**", "/about").permitAll()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/login")
.permitAll()
.and()
.logout()
.permitAll();
}
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.userDetailsService(userSevice)
.passwordEncoder(passwordEncoder);
}
}
用户服务类
public class UserService implements UserDetailsService {
@Autowired
private UserRepo userRepo;
@Override
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
User user = userRepo.findByUsername(username);
System.out.println(username);
if (user == null) {
throw new UsernameNotFoundException("User not found");
}
return user;
}
}
UserDetailsService
只显示用户名,但我想要它,这样我仍然可以看到将输入哪个密码,我输入system.out.printl(username)
了验证,它显示,而且我不知道如何输出密码。它们取自数据库。提前谢谢。对不起我的英语
解决方案
HttpServletRequest request =((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();
String passwordFromForm = request.getParameter("password");
推荐阅读
- delphi - 如何检查字符串中是否存在“@”
- reactjs - 之间的区别
和组件名称()? - flutter - flutter 构建函数返回 null
- c - 如何通过为变量提供相同的值数组来防止缓冲区溢出?
- google-chrome - 我可以通过eclipse运行Gwt应用程序,但是一旦我创建了一个war文件并部署到tomcat服务器中就无法访问gw
- powershell - Powersell - 远程查询用户是否跨域存在 [最快]
- visual-studio-code - Visual Studio Code git-bash 终端中的键映射
- sql - oracle如何连接两个表
- android - Android Studio 4.0 无法解析 gradle 依赖
- node.js - 如何在没有 $unwind 的情况下加入三个集合并根据条件获取嵌套结果?