28 lines
1000 B
Java
28 lines
1000 B
Java
package com.bezkoder.springjwt.security.services;
|
|
|
|
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.Service;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
import com.bezkoder.springjwt.models.User;
|
|
import com.bezkoder.springjwt.repository.UserRepository;
|
|
|
|
@Service
|
|
public class UserDetailsServiceImpl implements UserDetailsService {
|
|
@Autowired
|
|
UserRepository userRepository;
|
|
|
|
@Override
|
|
@Transactional
|
|
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
|
|
User user = userRepository.findByUsername(username)
|
|
.orElseThrow(() -> new UsernameNotFoundException("User Not Found with username: " + username));
|
|
|
|
return UserDetailsImpl.build(user);
|
|
}
|
|
|
|
}
|