본문 바로가기
728x90

분류 전체보기247

[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.
[231117] HTTP 요청 ~ 응답의 과정 (Feat. todoapp) 웹에서의 클라이언트와 서버 간의 요청과 응답 사이의 과정에 대해 잘 정리되어 있지 않다보니 Spring security도 잘 이해가 되지 않는 것 같아 한번 정리해보려고 한다. HTTP의 동작 과정 서버 접속 클라이언트 요청 서버 응답 연결 종료 1. 서버 접속 1-1. 사용자가 웹 브라우저에 URL 주소를 입력 URL: 클라이언트가 서버를 지칭할 때 사용되는 주소 프로토콜, 연결하고자 하는 서버의 호스트 이름, 서버 내부의 파일 경로명으로 표현 1-2. DNS 서버에 웹 서버의 호스트이름을 IP 주소로 변경 요청 DNS(Domain Name System): 주소와 이름 정보를 자동으로 유지하고 관리하는 분산 데이터베이스 시스템 Domain name(호스트 이름) IP 주소 변환 기능 수행 호스트 주소와.. 2023. 11. 17.
[231116] Spring 숙련주차 개인과제 Spring 숙련주차 개인과제 "회원가입, 로그인 기능이 있는 투두앱 백엔드 서버 만들기" 요구사항 회원 가입 API username, password를 Client에서 전달받기 username은 최소 4자 이상, 10자 이하이며 알파벳 소문자(a~z), 숫자(0~9)로 구성되어야 한다. password는 최소 8자 이상, 15자 이하이며 알파벳 대소문자(a~z, A~Z), 숫자(0~9)로 구성되어야 한다. DB에 중복된 username이 없다면 회원을 저장하고 Client 로 성공했다는 메시지, 상태코드 반환하기 로그인 API username, password를 Client에서 전달받기 DB에서 username을 사용하여 저장된 회원의 유무를 확인하고 있다면 password 비교하기 로그인 성공 시, .. 2023. 11. 16.