프로젝트/SNS 프로젝트10 [회원정보 수정] 영속화 / 세션 정보 수정 UserService @RequiredArgsConstructor @Service public class UserService { private final UserRepository userRepository; private final BCryptPasswordEncoder bCryptPasswordEncoder; @Transactional public User 회원수정(int id,User user) { // 1. 영속화 // (1) get(): 무조건 찾았다.걱정마 // (2) orElseThrow(): 못찾았으니 exception 발동 User userEntity = userRepository.findById(id).get(); // 2. 영속화된 오브젝트 수정 userEntity.setName(u.. 2024. 3. 29. [회원정보 수정] @AuthenticationPrincipal / Ajax사용 Authentication이란? Spring Security에서 사용자를 나타내는 중요한 객체 Spring Security에서는 사용자의 인증 및 인가 정보를 Authentication객체에 담는다. 즉 이 객체는 현재 사용자를 나타내는 핵심 객체이며, 사용자가 인증되면 이 객체가 생성되어야 한다. @AuthenticationPrincipal 이란? @AuthenticationPrincipal 어노테이션을 사용하면 세션에 저장된 현재 사용자의 정보를 쉽게 찾을 수 있다. 예를 들어 로그인 후 세션에 저장된 사용자 정보를 Authentication 객체를 통해 가져오려면 일련의 과정을 거쳐야한다. 그러나 @AuthenticationPrincipal을 사용하면 이 과정을 간소화할 수 있다. @GetMappi.. 2024. 3. 28. [로그인] UserDetailService 로그인할 때 POST방식 쓰는이유? 로그인 POST는 보통 INSERT할 때 쓰지만 예외적으로 로그인은 DB에 해당 정보를 SELECT하는 것임에도 보안해야 할 사용자의 개인 정보를 서버에 전달하는 과정이기 때문에 body에 담아 전송하는 POST방식을 택한다. 따라서 URL에 정보가 노출되지 않는다. PrincipalDetailsService PrincipalDetailsService 클래스는 Spring Security에서 사용자의 인증 정보를 조회하는 역할을 한다. 주로 사용자의 아이디(username)를 기반으로 데이터베이스에서 사용자 정보를 조회하고, 조회된 정보를 PrincipalDetails 객체로 변환하여 반환한다. @RequiredArgsConstructor @Service public .. 2024. 3. 28. [회원가입] 전처리 후처리 개념 및 validation 전처리 후처리 전처리 : 입력된 데이터의 유효성을 검증하는 단계 후처리 : 전처리를 거친 후에 발생하는 예외를 처리하는 단계 회원가입 시에 유니크 조건이 걸려 있는 username을 처리하기 위해 전처리와 후처리를 사용할 수 있다. 전처리 단계에서는 입력된 username이 20자 이하인지 확인하여 유효성을 검증한다.전처리는 DB를 거칠 필요가 없는 단계이다. 후처리 단계에서는 DB를 거쳐야만 알 수 있는 정보를 다룬다. 이미 존재하는 username인지 확인하고, 존재한다면 예외를 발생시켜 처리한다. 이를 통해 입력 데이터의 유효성을 미리 검사하고, 발생하는 예외를 적절히 처리하여 안정성을 높일 수 있다. validation SignDto @Data // getter,setter 포함 public cl.. 2024. 3. 26. 이전 1 2 3 다음