본문 바로가기
728x90

TIL61

[231201] JPA와 영속성 컨텍스트 지난 과제를 어느 정도 마무리하면서 추가로 궁금했던 내용들을 정리해보려고 한다. JPA에서는 엔티티 매니저에 의해 엔티티들을 영속화시켜 주는데, Spirng data JPA의 경우 내부적으로 처리해주다보니 오히려 영속화나 트랜잭션 과정에 대해 이해가 잘 되지 않았다. 그래서 영속성 컨텍스트에 대해 더 공부할 필요성을 느꼈다. Spring Security 필터에서 받아온 User 엔티티는 영속화되어 있지 않다 엔티티의 변화가 일어나는 곳은 반드시 트랜잭션이 필요하다 DB 상에 엔티티 데이터의 변화를 반영하기 위해서 ! 스프링 시큐리티 컨텍스트에서의 JPA 엔티티는 준영속 상태 스프링 시큐리티 컨텍스트 principal에는 해당 엔티티를 구분할 수 있는 ID 정도의 문자열만 저장하자 따라서 @Authenti.. 2023. 12. 1.
[231130] 팀과제 수정 팀 과제 수정 깃허브: https://github.com/dlwls423/hobby-bunage-2 GitHub - dlwls423/hobby-bunage-2: 팀과제 hobby bungae 수정 팀과제 hobby bungae 수정. Contribute to dlwls423/hobby-bunage-2 development by creating an account on GitHub. github.com API 명세: https://documenter.getpostman.com/view/30859017/2s9YeHZAAB hobbybungae The Postman Documenter generates and maintains beautiful, live documentation for your collect.. 2023. 11. 30.
[231129] 프록시와 영속성, 스프링 데이터 JPA 프록시와 연관관계 지연 로딩: 연관된 엔티티가 실제 사용될 때까지 데이터베이스 조회를 지연하는 방법 프록시: 지연 로딩 기능을 사용하려면 실제 엔티티 객체 대신에 데이터베이스 조회를 지연할 수 있는 가짜 객체가 필요한데, 이를 프록시 객체라고 함 Member member = em.find(Member.class, "member1"); 이렇게 엔티티를 직접 조회하면 조회한 엔티티를 실제 사용하지 않아도 데이터베이스를 조회(영속성 컨텍스트에 엔티티가 없는 경우) Member member = em.getReference(Member.class, "member1"); JPA는 데이터베이스를 조회하지 않고 실제 엔티티 객체도 생성하지 않음 대신 데이터베이스 접근을 위임한 프록시 객체를 반환 프록시의 특징 실제 클.. 2023. 11. 29.
[231128] Spring 숙련주차 팀과제, JPA 연관관계 Spring 숙련주차 팀과제 팀 노션: https://www.notion.so/vanillacake369/424f22bf8bb34264a0e37038a443b2e8?v=d65de652cd584abcb44c3f63dd6b7c5e HobiMate A new tool for teams & individuals that blends everyday work apps into one. www.notion.so 팀 깃허브: https://github.com/sparta-are-you-t/hobby-bungae GitHub - sparta-are-you-t/hobby-bungae Contribute to sparta-are-you-t/hobby-bungae development by creating an accoun.. 2023. 11. 28.
[231122] ResponseDto, RequestDto에 Getter가 필요한 이유 팀 과제를 진행하던 중에 지난번과 비슷하게 return 직전까지는 데이터가 잘 전달되다가 return 이후에 제대로 원하는 값을 반환받지 못하는 문제와 마주하게 되었다. 팀원들과 계속 고민하면서 문제 원인을 찾지 못했는데 문뜩 지난번에 마주햇던 오류가 생각이 났다. https://jinjinjincode.tistory.com/230 [231115] HttpMediaTypeNotAcceptableException 에러 해결 Spring 숙련주차 개인과제를 하던 중 로그인, 회원가입, 할일카드 기능을 만든 후에 댓글 관련 기능(댓글 생성 기능)을 개발하기 시작하면서 에러를 마주하게 되었다. 이전에 만들었던 할일카드 jinjinjincode.tistory.com ResponseDto에서 @Getter를 붙여주.. 2023. 11. 22.
[231120] Spring 숙련주차 개인과제 해설 Authentication Filter 대신 로그인 관련 메소드를 사용하는 방법 숙련과제를 할 때 나는 기존 강의에서 사용했었던 Spring security에서 기본 제공하는 로그인 기능을 사용하였다. JwtAuthenticationFilter는 HttpServletRequest로 들어온 정보를 바탕으로 Authentication 객체를 성공적으로 생성했을 때 jwt 토큰을 헤더에 담아 반환하는 역할을 수행한다. 나는 로그인 기능을 구현하려고 했을 때 처음부터 이 필터를 사용하여 구현하는 것만 생각했는데 올라온 해설 강의 영상을 보니 Authentication 필터를 구현하지 않고 메소드로 구현하는 방법도 있어서 정리해보려고 한다. 1. WebSecurityConfig에 AuthorizationFilte.. 2023. 11. 20.