<스프링 부트와 AWS로 혼자 구현하는 웹 서비스> Chapter 1, 2 정리
<스프링 부트와 AWS로 혼자 구현하는 웹 서비스> Chapter 3, 4 정리
Spring으로 커뮤니티 기능 중 회원(member) 생성, 조회, 수정, 삭제 기능을 구현하기ex) 멤버 조회 위의 예시처럼 4개 필드만 보고 싶은데, 조회 시 응답에 memberId 필드가 포함된다.초기 MemberResponseDto.java 코드매개변수가 5개였
세션에서 작성한 코드인텔리제이에서 경로 변수 'accountId'은(는) 사용되지 않습니다 라는 경고가 뜬다.그리고 테스트를 위해 Postman에서 url을 http://localhost:8080/posts/3?accountId=2로 설정하고 DELETE를 보
AWS EC2 & RDS인터넷을 통해 가상화된 컴퓨터의 리소스(서버, 스토리지, 데이터베이스, 네트워크, 소프트웨어, 모니터링 등)를 제공하는 것리소스가 필요할 때(on-demand) 리소스를 사용한 만큼의 돈을 지불하고(usage-metered) 사용 -> 유동적으로
InvalidDefinitionException 발생 댓글 수정 기능을 구현하고 Postman으로 실행했는데, 에러가 발생하였다. 에러 로그를 확인해보니, CommentResponseDto.java의 writer를 처리하는 데에서 InvalidDefinitionEx
JPA란? Java 진영에서 ORM(Object-Relational Mapping) 기술 표준으로 사용하는 인터페이스 모음JPA가 필요한 이유객체를 관계형 데이터베이스에서 관리1) 단순 반복 작업관계형 데이터베이스는 SQL로만 사용 가능객체를 DB에 CRUD하려면 너무
gradle문제: ./gradlew build 입력 후 20분이 지나도 compileJava 단계에서 로딩 중메모리 부족 현상 해결 방법application.yml 파일 작성
책에서는 이클립스를 사용하지만, 인텔리제이에서 프로젝트를 진행하겠다.https://github.com/holyeye/jpabook 에서 예제 프로젝트(jpabook-master)를 내려받고 압축을 해제한다.생성된 폴더(jpabook-master)를 Intell
영속성 관리
CI/CD & AWS 배포 오류 해결 과정
4.1 @Entity JPA를 사용해서 테이블과 매핑할 클래스는 @Entity 어노테이션을 필수로 붙여야 한다. 속성 name JPA에서 사용할 엔티티 이름을 지정한다. 따로 설정하지 않으면 클래스 이름을 그대로 사용한다. 만약 다른 패키지에 이름이 같은 엔티티 클래
연관관계 매핑 기초5.1 단방향 연관관계
<코드로 배우는 스프링 부트 웹 프로젝트> Chap. 10핵심 역할은 Authentication Manager(인증 매니저)를 통해서 이루어진다.Authentication Provider는 인증 매니저가 어떻게 동작해야 하는지를 결정하고 최종적으로 실제 인증은 U
다양한 연관관계 매핑
고급 매핑관계형 데이터베이스에는 객체지향 언어에서 다루는 상속이라는 개념이 없다. 대신에 슈퍼타입 서브타입 관계라는 모델링 기법이 객체의 상속 개념과 가장 유사하다.ORM에서 이야기하는 상속 관계 매핑은 객체의 상속 구조와 데이터베이스의 슈퍼타입 서브타입 관계를 매핑하
JPA가 공식 지원하는 기능JPQL(Java Persistence Query Language)Criteria 쿼리: JPQL을 편하게 작성하도록 도와주는 API, 빌더 클래스 모음네이티브 SQL: JPA에서 JPQL 대신 직접 SQL을 사용할 수 있다.가장 중요한 객체
스프링 프레임워크에서 JPA를 편리하게 사용할 수 있도록 지원하는 프로젝트CRUD를 처리하기 위한 공통 인터페이스를 제공org.springframework.data.jpa.repository.JpaRepository리포지토리를 개발할 때 인터페이스만 작성하면 실행 시점
컬렉션과 부가 기능컬렉션컨버터: 엔티티의 데이터를 변환해서 데이터베이스에 저장한다.리스너: 엔티티에서 발생한 이벤트를 처리한다.엔티티 그래프: 엔티티를 조회할 때 연관된 엔티티들을 선택해서 함께 조회한다.JPA는 자바에서 기본으로 제공하는 Collection, List
심각한 예외이므로 복구해서는 안 됨이 예외가 발생하면 트랜잭션을 강제로 커밋해도 트랜잭션이 커밋되지 않고 대신에 javax.persistence.RollbackException 예외가 발생함javax.persistence.EntityExistsException: Ent
트랜잭션과 락, 2차 캐시트랜잭션은 ACID를 보장해야 한다.Atomicity 원자성: 트랜잭션 내에서 실행한 작업들은 마치 하나의 작업인 것처럼 모두 성공하든가 모두 실패해야 한다.Consistency 일관성Isolation 격리성Durability 지속성
대부분의 비즈니스 로직에서 관심을 가지는 것을 공통 관심사항이라고 함관심사항을 한 번에 추출해서 처리하면 코드를 훨씬 간결하게 작성할 수 있음관심사항을 처리하는 방법웹과 관련된 관심사항은 필터나 인터셉터를 이용하는 게 좋다\-> 필터랑 인터셉터는 파라미터에 Servle