Spring55 [TIL] 231130Spring Timestamped @Service @Transactional Timestamped Timestamped class추가할때 어플리케이션에 @EnableJpaAuditing 추가하기! @Transactional Service단에 update 메서드에 더티채킹(dirty checking) 위해 @Transactional 에너테이션 넣기! 2023. 11. 30. [TIL] 231124 Spring Security 로그인 Spring Security 로그인 Spring Security 내부의 AuthenticationManager과 UserDetailsService를 통해 DB와 소통 User name을 UserDetailsService로 전달 -> DB에서 usernmae으로 회원정보 조회 -> 성공시 UserDetails(회원상세정보) 생성 Username, password일치 시 로그인 성공 -> 세션 생성 UserDetailsServiceImpl @Service public class UserDetailsServiceImpl implements UserDetailsService { Private final UserRepository userRepository . . . } @Service 어노테이션 implemen.. 2023. 11. 24. [TIL] 231123 Spring Filter, Spring Security 프레임워크 Filter Client로부터 오는 요청과 응답에 대해 최초/최종 단계에 위치 요청과 응답시 정보를 변경하거나 부가적인 기능 가능 주로 보안처리나 로깅 등에 사용 인증, 인가와 관련된 로직 처리 (비즈니스 로직과 분리하여 관리 가능) Filter 사용법 @Order(1) : 필터 순서 지정 Implements Filter 로 필터라고 선언 public class Logging Filter implements Filter{ } implements Filter @Override public void doFilter(~~)~~ AuthFilter : 인증 인가 필터 만들기 Repository와 JwtUtil 가져오기 if (StringUtils.hasText(url) && (url.startsWith("/ap.. 2023. 11. 23. [TIL] 231121 Spring 회원가입 구현 PK, FK 연결할때 cascade cascade = CascadeType.REMOVE 삭제될때 같이 삭제되도록 설정 passwordEncoder 암호화된 비밀번호 확인 if(!passwordEncoder.matches(“사용자가 입력한 비밀번호’, “디비에 저장된 비밀번호”)){ throw new IllegalAccessError(“비밀번호가 일치하지 않습니다.”); } 디비에 암호화되어 저장된 비번을 사용자 비번 그대로와 비교하여 같은지 확인하여줌 matches( 비번, 저장된 비번) ❓추가 공부할거!!!!질문❓ 어떨땐 NoArgsConstructor / All / Required ?? => 생성자 없을때 No => Required: final 붙어있는 것들 파라미터로 넣어서 생성자 만들때? Serv.. 2023. 11. 22. [TIL] 231117 Spring Data JPA, JPA Auditing, Query Method, Entity의 상태 Entity의 상태 Transient (비영속)=> Managed (영속) persist(entity) : 비영속 상태의 entity를 영속성 컨텍스트에 저장하여 영속 상태를 만들어줌 Detached (준영속) detach() : 영속성 켄텍스트에 저장되어있던 Entity를 준영속 상태로 만들어줌 => DB에 업데이트 불가 - 영속성컨텍스트로 관리될 때만 업데이트가 이루어짐 clear() : 모든 영속성 컨텍스트 초기화 영속성컨텍스트에 있는 모든 엔티티를 준영속 상태로 만듦 내용은 비우지만 틀은 유지 merge() : Entity를 영속상태로 바꾸어줌 - Entity가 영속성컨텐스트에 없으면 DB조회, 있으면 내용 추가해서 저장 - DB에 없으면 새로 저장 Spring Data JPA Repository.. 2023. 11. 17. [TIL] 231116 Spring | 영속성컨텍스트 JPA 트렌젝션 EntityManager 영속성 컨텍스트 - Entity객체를 관리하기 위해 만들어진 공간 - Entity는 Entity Manager에 의해 관리된다 JPA - 개발자들이 SQL을 사용하지 않아도 DB와 소통할 수 있게 해줌 - JPA는 영속성 컨텍스트를 통해 Entity객체를 관리하면서 DB와 소통함 Entity Manger - Entity를 관리함 - EntityManagerFactory를 통해 엔티티매니저 생성 - /resources/META-INF/ 위치에 persistence.xml 파일을 만들어 정보 넣어줌 com.sparta.entity.Memo EntityManagerFactory emf = Persistence.createEntityManagerFactory("memo"); EntityManager em = e.. 2023. 11. 16. 이전 1 ··· 5 6 7 8 9 10 다음