개발/Spring
[Spring & QueryDSL] update 시 in 조건을 사용할 경우
hanks
2024. 12. 17. 09:36
/* 과거 다른 블로그에 작성했던 내용입니다. */
API 개발중 QueryDSL로 in 조건 적용을 하는 방법에 대해 갑자기 생각나지 않아서 찾아보고 기록하기 위해서 작성
입고를 취소하기 위한 기능인데, 입고번호를 여러개 체크해서 요청할 경우의 클래스이다.
@Data
public static class InboundCancelRequest{
private String inboundNo;
}
inboundNo를 List로 받아서 벌크 연산 처리
public void inboundCancel(List<InboundDto.InboundCancelRequest> request) {
queryFactory.update(inboundItem)
.set(inboundItem.status, false)
.where(inboundItem
.inbound
.inboundNo.in(request.stream()
.map(InboundDto.InboundCancelRequest::getInboundNo).collect(Collectors.toList())))
.execute();
}