객체와 테이블 매핑 : @Entity, @Table 기본키 매핑 : @Id, @GeneratedValue, @SequenceGenerator, @TableGenerator 필드와 컬럼 매핑 : @Column, @Enumerated, @Temporal, @Lob, @Transient 어노테이션 적용 기능 @Entity 클래스 JPA 에게 TABLE 매핑 -> 엔티티 클래스 @Table 클래스 @Table 생략시 클래스 이름이 테이블 이름 · name : 테이블 이름 · catalog : 테이블 카테고리 · schema : 테이블 스키마 · uniqueConstraints : 컬럼값 유니크 제약 조건 · indexes : 인덱스 생성 @Access 클래스, 필드 · AccessType.FIELD : 필드에 ..
테이블에 CRUD 작업을 해야 할 떄 생성일자, 변경일자, 등록자, 수정자 필드에 작업은 공통으로 적용이 되는 작업 입니다. JPA를 적용 할 때 @EntityListeners 에노테이션을 사용 하면 쉽게 적용 할 수 있습니다. @EntityListeners 주석은 Specifies the callback listener classes to be used for an entity or mapped superclass. This annotation may be applied to an entity class or mapped superclass 과 같이 작성되어 있습니다. Spring-Data-Jpa에서 제공 하는 기본 에노테이션을 사용하여 생성 일자와 수정일자를 코드 개발 없이 사용 할 수 있습니다. 다..
1. JPA Entity Life Cycle Event JPA 사용할 때 Entity가 어떻게 동작하는지 확인할 수 있습니다. 확인은 JPA는 엔티티의 생명주기 동안 일어나는 일곱 가지 선택적인 이벤트를 통해서 확인합니다. Entity Life Cycle Event는 이벤트가 발생할 때 콜백 메서드를 실행할 수 있도록 애노테이션을 다음과 같이 제공합니다. 새 엔터티에 대해 persist가 호출되기 전에 : @PrePersist 새 엔터티에 대해 persist가 호출된 후 : @PostPersist 엔터티가 제거되기 전에 : @PreRemove 엔터티가 삭제된 후 : @PostRemove 업데이트 작업 전 : @PreUpdate 엔터티가 업데이트된 후 : @PostUpdate 엔터티가 로드된 후 : @Po..
Elasticsearch Client 구성 Elasticsearch Object Mapping Elasticsearch Operations CriteriaQuery StringQuery NativeQuery Elasticsearch Repositories 참고 : Spring Data Elasticsearch - Reference Documentation Spring Data Elasticsearch - Reference Documentation The Spring Data infrastructure provides hooks for modifying an entity before and after certain methods are invoked. Those so called EntityCallback..

웹 브라우저에서 클라리언트와 서버간의 통신은 요청에 의한 응답을 주는 방법을 다음 절차를 따릅니다. Http Client에서 Http Server로 데이터를 요청 합니다. Http Server은 Http Client에서 전달 받은 전문을 해석 하여 결과로 정보를 돌려 줍니다. XMLHttpRequest 객체를 마이크로소프트 에서 개발하여 사용하던 것을 World Wide Web Consortium이 2006년에 XMLHttpRequest 객체의 작업 사양을 발표한 이후 서버에서 데이터를 가져온후 페이지 전체를 로드 할 필요가 없어지게 되었다 이 시점을 기준으로 비동기 요청을 웹 브라우저에서 할 수 있게 되어 풍부한 웹 페이지가 탄생하게 됩니다. 1. polling 클라이언트에서 서버로 전통적인 요청/응답..
배치 또는 데몬을 통해서 예약된 시간에 프로그램을 실행 하는 것을 간단히 스프링을 사용해서 다음과 같은 방법으로 프로그램을 할 수 있습니다. @Scheduled : 스프링 부트에서 @Scheduled 어노테이션을 이용하여 스케줄링 TaskScheduler : ThreadPoolTaskScheduler를 사용해서 여러개의 예약 작업을 실행 Quartz : Quartz 라이브러리를 Spring-Boot에 통합 한 spring-boot-starter-quartz 를 사용 1. @Scheduled 사용 1-1. @Scheduled사용한 개발 @Scheduled는 Spring에서 생성한 한개의 Thread에서 실행이 되므로 여러개 등록이 되었을 때 하나의 job이 끝나야 다 job이 실행 됩니다. Applicat..
참고 : http://querydsl.com/
JPA로 개발시 쿼리 자동 생성에 따른 Repository Method 명명 규칙 입니다. 1. repositories 요소 이름 설명 base-package Repository 자동 검색할 패키지로 설정한패키지 아래의 모든 패키지도 검사되며, 와일드카드가 허용됩니다. repository-impl-postfix 사용자 정의 Repository 구현체의 접미사. 기본값은 Impl. query-lookup-strategy 쿼리를 생성하는 데 사용할 전략으로 " 쿼리 조회 전략 "에서 확인 할 수 있습니다. 기본값은 create-if-not-found. named-queries-location 외부에서 정의된 쿼리가 포함된 속성 파일을 검색할 위치 . consider-nested-repositories 중첩된..