Мне было интересно, можно ли сохранить информацию о вошедшем в систему пользователе (имя пользователя, имя, фамилия, роли) в сеансе, чтобы я мог получить ее в любом месте программы, не выполняя поиск в базе данных?
В настоящее время я делаю это в большинстве своих методов, чтобы получить всю необходимую информацию:
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
UserDetails userDetails = (UserDetails) authentication.getPrincipal();
UsersModel senderUser = userRepository.findByusername(userDetails.getUsername());
Однако я бы не хотел каждый раз выполнять поиск в базе данных для получения информации о пользователе.