본문 바로가기
반응형

전체 글1036

JPA 조회 시 OrderBy 거는 방법 JPA에서 위 이미지와 같은 Sample 테이블을 가지고 조회 시 Age 컬럼을 기준으로 내림차순 정렬해서 가져오려고 하는데 List findByGenderOrderByAgeDesc(String gender); [Sample(id=4, name=수진, gender=W, age=30, createdDate=null, updatedDate=null) , Sample(id=3, name=영희, gender=W, age=25, createdDate=null, updatedDate=null)] List findAllByOrderByAgeDesc(); [Sample(id=4, name=수진, gender=W, age=30, createdDate=null, updatedDate=null) , Sample(id=2, .. 2022. 8. 15.
JPA For queries with named parameters 에러 해결방법 @Query("SELECT p FROM Sample p WHERE p.gender = :gender or p.age = :age") List findByAgeOrGender(Long age, String gender); JPA를 사용하여 위와 같은 @Query 문을 호출 시 java.lang.IllegalStateException: For queries with named parameters you need to use provide names for method parameters. Use @Param for query method parameters, or when on Java 8+ use the javac flag -parameters. 이런 에러가 떨어지는 것이 보이는데 @Query에서 파라미터.. 2022. 8. 14.
JPA 조회 시 Between 사용방법 정리 이미지와 같은 Sample 테이블에서 JPA를 이용하여 조회 시 SELECT * FROM SAMPLE WHERE AGE BETWEEN 20 AND 25 와 같이 age가 20~25 사이인 값을 뽑아오려고 하는데 Repository로 이동한 뒤 findByAgeBetween(Long startAge, Long endAge) findBy컬럼명Between(start, end) 위와 같은 메소드를 사용해주면 되는데 실제 적용시에는 컬럼명 부분만 변경해주면 된다 sampleRepository.findByAgeBetween(20L, 25L) [Sample(id=1, name=철수, gender=M, age=20, createdDate=null, updatedDate=null) , Sample(id=2, name=.. 2022. 8. 14.
JPA WHERE AND OR 사용방법 정리 JPA에서 위 이미지의 테이블 Sample을 가지고 WHERE AND, OR 조건을 적용해서 조회하려고 하는데 먼저 SELECT * FROM WHERE GENDER = 'W' AND AGE = 25 인 항목을 조회하려면 Repository에 아래와 같이 findByGenderAndAge(String gender, Long age) ( findBy컬럼명And컬럼명 ) And컬럼명을 추가하는 식으로 메소드를 작성한다 sampleRepository.findByGenderAndAge("W", 25L) [Sample(id=3, name=영희, gender=W, age=25, createdDate=null, updatedDate=null)] 메소드를 작성한 뒤 호출해보면 gender가 W면서 age가 25인 항목만.. 2022. 8. 14.
JPA query did not return a unique result 에러 해결방법 query did not return a unique result: 3 JPA에서 조회 사용 시 위와 같은 에러가 발생하는 경우는 Repository 부분을 확인해주면 되는데 조회 결과는 3건이 나왔지만 Repository에서 Return을 Class로 받았기 때문에 담을 수가 없어서 에러가 발생한 것인데 Repository의 Return 타입을 Class에서 List 이런 식으로 받아주면 해결된다 2022. 8. 14.
JPA 특정 컬럼 값 조건으로 조회하는 방법 이미지와 같은 Sample 테이블을 가지고 JPA에서 gender 컬럼 값을 가지고 조회 결과를 얻으려 하는데 Query로 보자면 SELECT * FROM SAMPLE WHERE GENDER = '값' 이런 식이 되겠다 여기서 @Query를 사용해줄 필요 없이 Repository에서 findBy컬럼명 만으로도 조회 조건을 걸어 가져올 수 있는데 public interface SampleRepository extends JpaRepository { public Sample findByGender(String gender); } 위 코드 예제를 보면 findByGender(String 값); 이렇게 메소드를 만들어주면 끝인데 주의할 점은 findBy컬럼명 이 Entity에 작성한 컬럼명과 일치해야 한다는 것.. 2022. 8. 14.

반응형