save와 saveAndFlush
save와 saveAndFlush 더티체킹(@Transactional)이 아닌 merger 방법이다 merger 방법으로는 데이터를 영속하는 메서드인 save 메서드를 사용하는 것이다. save나 saveAndFlush를 쓰는 경우나 둘다 set을 할 경우 update가 되지 않는다 @Transactional 어노테이션을 붙이는 ...
save와 saveAndFlush 더티체킹(@Transactional)이 아닌 merger 방법이다 merger 방법으로는 데이터를 영속하는 메서드인 save 메서드를 사용하는 것이다. save나 saveAndFlush를 쓰는 경우나 둘다 set을 할 경우 update가 되지 않는다 @Transactional 어노테이션을 붙이는 ...
미로 탐색(2178) import java.io.*; import java.util.*; public class Main { static boolean[][] nm; static boolean[][] v; static int[][] cnt; static int n, m; public static void ma...
Update JPA에는 수정과 관련된 메서드가 없다 그렇다면 어떻게 해야하는 것일까?? 방법은 두가지가 있다. 1) 더티체킹(변경감지) 2) 벌크연산 더티체킹(변경감지) Entity를 조회하여 조회된 Entity 데이터를 변경만 하면 DB에 자동으로 반영이 되도록 한 것이다. JAP는 영속성 콘텍스트를 생성하여 D...
@MappedSuperClass 부모 클래스는 테이블과 매핑하지 않고 부모 클래스를 상속받는 자식 클래스에게 매핑 정보만 제공해준다 @Entity 어노테이션을 사용하면 실제 테이블과 매핑이되지만 @MappedSuperClass는 실제 테이블에 매핑되지 않는다. 위의 클래스는 직접 생성해서 사용할 일이 거의 없으므로 추상클래스로 만드는...
@EntityListener EntityListener는 엔티티의 변화를 감지하고 테이블의 데이터를 조작하는 일을 한다 Column 값이 수정되는 것에 대해서 반복적인 코드를 일일이 작성하면 실수가 발생할 수 있기 때문에 EntityListener를 사용하면 좋다 JPA에서는 아래의 7가지 Event를 제공한다 ...
회의실 배정(1931) import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStream...
그리디 알고리즘 각 단계에서 최적의 선택을 해서 얻어진 결론이 최종적인 해답인 경우 예 거스름돈 1250원을 동전 500, 100, 50, 10원을 사용하여 제공해준다 큰 액수의 동전부터 사용한다. 1250 / 500 = 2개, 250원이 500원보다 작으므로 100원으로 넘어감. ...
Spring Cloud Gateway API Gateway의 역할 API 라우팅 인증 및 권한 부여 속도 제한 부하 분산(로드밸런싱) 로깅(모니터링) 오케스트레이션 등등.. Spring Cloud Gateway(SCG) API Gateway 중 하나이다 API gateway로는 Netflix Zuul 과 ...
Spring Cloud Eureka Eureka 서버 Eureka 서버는 마이크로 서비스에서 주소록 역할을 한다 기존의 레거시 프로젝트의 경우에는 한개의 서버에서 거대한 모놀리스 어플리케이션을 구동하기 때문에 마이크로 서비스의 주소록이 필요없었다 하지만 컨테이너 및 쿠버네티스에서 서비스를 운영하게 ...
Spring Cloud Spring Cloud는 MSA에 필요한 여러가지 기능들을 스프링부트의 dependency를 통해 제공한다. 서비스 Discovery(Eureka) 클라우드에서 애플리케이션은 항상 다른 서비스의 정확한 위치를 알 수 없다 컨테이너는 지속적으로 생성되고 사라지기 때문에 동일한 엔드...