JAVA

쿼리 없이 조회하는 JPA 방법

유반짝 2024. 10. 30. 13:17

mapper.xml과 mapper.java 없이 서버에서 간단히 조회하는 방법

1. controller.java

@RequestMapping(value ="getList",method = RequestMethod.GET, produces = APPLICATION_JSON)
public Responses.ListResponse getList(RequestParams<Java> requestParams) {
    List<Java> list = service.getList(requestParams);
    return Responses.ListResponse.of(list);
}

 

2. service.java

public List<Java> getList(RequestParams<Java> requestParams) {

     String company = requestParams.getString("company", "");
     String lotNo = requestParams.getString("lotNo", "");
     String seq = requestParams.getString("seq", "");

     BooleanBuilder builder = new BooleanBuilder();

     if (isNotEmpty(company)) { 
         builder.and(qJava.company.eq(company));
     }

     if (isNotEmpty(lotNo)) {  
         builder.and(qJava.lotNo.eq(lotNo));
     }

     if (isNotEmpty(seq)) {  
         builder.and(qJava.seq.ne(seq));
     }

     return findAll(builder);
}

 

3. 쿼리 결과

select * 
from JAVA
java0_.COMPANY='1000' 
        and java0_.LOT_NO='SV24100784' 
        and java0_.SEQ<>'120007701351' // ne 는 <>,!= 를 뜻한다