Class UserService

java.lang.Object
com.libitum.app.services.UserService
All Implemented Interfaces:
org.springframework.security.core.userdetails.UserDetailsService

@Service public class UserService extends Object implements org.springframework.security.core.userdetails.UserDetailsService
Servicio de usuario que implementa UserDetailsService para proporcionar detalles del usuario. Permite la carga de usuarios por nombre y proporciona métodos adicionales para gestionar usuarios.
Since:
1.0
Version:
1.0
Author:
Álvaro Carrión
  • Constructor Details

  • Method Details

    • loadUserByUsername

      public org.springframework.security.core.userdetails.UserDetails loadUserByUsername(String email) throws org.springframework.security.core.userdetails.UsernameNotFoundException
      Devuelve un usuario por el nombre de usuario dentro de User de SpringSecurity gracias a UserDetails puede implementarse de buena práctica.
      Specified by:
      loadUserByUsername in interface org.springframework.security.core.userdetails.UserDetailsService
      Parameters:
      email - the username identifying the user whose data is required.
      Returns:
      User from UserDetails of SpringSecurity
      Throws:
      org.springframework.security.core.userdetails.UsernameNotFoundException
    • existByName

      public boolean existByName(String name)
      Método que busca un usuario por su nombre.
      Parameters:
      name - Nombre del usuario a buscar
      Returns:
      User encontrado o null si no existe
    • existByEmail

      public boolean existByEmail(String email)
      Método que busca un usuario por su email.
      Parameters:
      email - Email del usuario a buscar
      Returns:
      User encontrado o null si no existe
    • getAllUsers

      public List<ResponseUserDto> getAllUsers()
      Método que obtiene todos los usuarios de la base de datos.
      Returns:
      Lista de ResponseUserDto con todos los usuarios
    • save

      public void save(User user)
      Método que guarda un nuevo usuario en la base de datos.
      Parameters:
      user - Usuario a guardar