JwtUserDetailsService.java 1.0 KB

123456789101112131415161718192021222324252627
  1. package com.izouma.nineth.security;
  2. import com.izouma.nineth.domain.User;
  3. import com.izouma.nineth.repo.UserRepo;
  4. import com.izouma.nineth.service.UserService;
  5. import lombok.AllArgsConstructor;
  6. import org.springframework.security.core.userdetails.UserDetails;
  7. import org.springframework.security.core.userdetails.UserDetailsService;
  8. import org.springframework.security.core.userdetails.UsernameNotFoundException;
  9. import org.springframework.stereotype.Service;
  10. @AllArgsConstructor
  11. @Service("jwtUserDetailsService")
  12. public class JwtUserDetailsService implements UserDetailsService {
  13. private UserService userService;
  14. @Override
  15. public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
  16. User user = userService.findByUsernameAndDelFalse(username).orElse(null);
  17. if (user == null) {
  18. throw new UsernameNotFoundException(String.format("No user found with username '%s'.", username));
  19. } else {
  20. return JwtUserFactory.create(user);
  21. }
  22. }
  23. }