분류 전체보기474 Entity Listener Listener: 어떠한 동작하는 것을 기다리다가 동작하게 되면 이벤트를 동작 해주는 것 Entity Listener: Entity 객체가 어떠한 동작을 하는지 기다리다가 이벤트를 동작 시키는 것 참고 사이트: https://erim1005.tistory.com/entry/%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B3%80%EA%B2%BD-%EC%95%8C%EB%A6%BC-EntityListeners 데이터 변경 알림 - @EntityListeners spring 의 data-jpa 사용시 데이터 변경시 알림을 받는 방법이 있다. EntityListener 클래스를 만들고 public class DataDtoListener { @PostLoad public void postLoad(Dat.. 2021. 7. 18. Enum 사용 예제 Enum: 열거형으로 객체를 새로 생성할 때 사용한다. 코드 package com.example.bookmanager.domain; public enum Gender { MALE, FEMALE } User 객체에 추가 private Gender gender; enum 값을 확인하기 위해 쿼리 작성 (JpaRepository를 상속받은 위치에서 작성한다.) // enum test // 사용자가 쿼리를 직접 입력하고 반영할 수 있도록 설정 @Query(value = "select * from user limit 1;", nativeQuery = true) Map findRawRecord(); 테스트 코드 @Test void enumTest(){ Dto(); User user = userRepository.f.. 2021. 7. 18. Entity 기본 속성 @Entity: DTO에 명시해주는 어노테이션으로 해당 객체가 JPA에서 관리되어지는 Entity객체임을 나타낸다. 반드시 구분할 수 있는 기본키가 존재해야한다.(@ID 어노테이션으로 정의 해준다.) @GeneratedValue: 기본키를 자동적으로 생성할 수있도록 도와주는 어노테이션 @Table: DTO에 명시해주는 어노테이션으로 선언해주게 되면 해당 클래스의 매핑되는 테이블을 생성할 때 테이블의 해당하는 속성을 정의해 줄 수 있다. 테이블명 선언 예제 @Table(name = "user_aa") 확인 인덱스와 키 설정도 함께 만들어 줄 수 있지만 실제 DB에서는 사용이 불가하다. @Table(name = "user_aa", indexes = {@Index(columnList = "name")}, un.. 2021. 7. 18. Query Method 예제 - 5(페이징 처리) 페이징 처리 코드 // Page: 응답 값, Pageable: 요청 값 Page findByName(String name, Pageable pageable); 테스트 코드 // 페이징 처리 System.out.println("findByName: " + userRepository.findByName("martin", PageRequest.of(0, 1, Sort.by(Sort.Order.desc("id"))))); 확인 페이징 처리된 데이터를 확인하는 방법 테스트 코드 // 내부의 값을 가져오는 방법 System.out.println("findByName2: " + userRepository.findByName("martin", PageRequest.of(0, 1, Sort.by(Sort.Order.de.. 2021. 7. 17. Query Method 예제 - 4 (정렬) 상위 데이터 1개를 가져오는 구문 List findTop1ByName(String name); 테스트 코드 System.out.println("findTop1ByName: " + userRepository.findTop1ByName("martin")); 확인 마지막 한 줄을 가져오는 구문(정렬 후에 마지막 한줄을 가져온다.) // 역순으로 정렬해서 마지막 한줄을 출력하는 예제 List findTopByNameOrderByIdDesc(String name) 테스트 코드 System.out.println("findTopByNameOrderByIdDesc: " + userRepository.findTopByNameOrderByIdDesc("martin")); 확인 다중 정렬을 사용하는 예제 // Id의 역순,.. 2021. 7. 17. Query Method 예제 - 3 해당 컬럼이 null이 아닌 값을 찾는 예제 List findByIdIsNotNull(); 테스트 코드 System.out.println("findByIdIsNotNull: " + userRepository.findByIdIsNotNull()); 원하는 값과 일치하는 데이터 출력 예제(in) List findByNameIn(List names); 테스트 코드 (배열로 파리미터를 입력한다.) System.out.println("findByNameIn: " + userRepository.findByNameIn(Lists.newArrayList("martin","dennis"))); 사용자 지정문자를 포함한 데이터를 출력하는 예제(like) List findByNameIn(List names); List fi.. 2021. 7. 17. 이전 1 ··· 22 23 24 25 26 27 28 ··· 79 다음