반응형
Spring CrudRepository를 공장 대소 문자 구분없는 쿼리
Spring CrudRepository 쿼리로; "이름"속성이있는 "DeviceType"엔터티를 선택하고 싶습니다. 그러나 다음 쿼리는 대소 문자를 구분하는 방식으로 자격을 선택합니다. 대소 문자를 구분하지 않는 방법. 감사합니다.
public interface DeviceTypeRepository extends CrudRepository<DeviceType, Integer>, JpaSpecificationExecutor<DeviceType> {
public Iterable<DeviceType> findByNameContaining(String name);
}
@Peter가 주석에서 언급했듯이 정확히 다음을 추가하십시오 IgnoreCase
.
public interface DeviceTypeRepository
extends CrudRepository<DeviceType, Integer>, JpaSpecificationExecutor<DeviceType> {
public Iterable<DeviceType> findByNameContainingIgnoreCase(String name);
}
메소드 이름 내에서 지원되는 모든 키워드 목록은 설명서 를 참조하십시오 .
다음 Spring 데이터 mongo 쿼리가 나를 위해 작동합니다. List
대신 사용하고 싶습니다Iterator
public interface DeviceTypeRepository extends CrudRepository<DeviceType,Integer>, JpaSpecificationExecutor<DeviceType> {
List<DeviceType> findByNameIgnoreCase(String name);
}
제 경우에는 추가 IgnoreCase
가 전혀 작동하지 않습니다.
정규 행사에 대한 옵션도 제공 할 수 있음을 알았습니다.
@Query(value = "{'title': {$regex : ?0, $options: 'i'}}")
Foo findByTitleRegex(String regexString);
이 i
옵션은 쿼리에서 대소 문자를 구분하지 않습니다.
사용자 정의 JPA 쿼리 상위 키워드 및 toUpperCase 를 사용하는 사람들을 위해 도움이됩니다. 다음 코드는 나를 위해 작동합니다.
return entityManager.createQuery("select q from "table " q where upper(q.applicant)=:applicant")
.setParameter("applicant",applicant.toUpperCase().trim()).getSingleResult();
참고 URL : https://stackoverflow.com/questions/22573428/case-insensitive-query-with-spring-crudrepository
반응형
'IT' 카테고리의 다른 글
비례를 유지하면서 이미지로 div를 어떻게 채울 수 있습니까? (0) | 2020.09.09 |
---|---|
HTML 요소 사이의 줄 바꿈 방지 (0) | 2020.09.09 |
UnmodifiableMap (Java Collections) vs ImmutableMap (Google) [duplicate] (0) | 2020.09.09 |
varchar () 열을 특정 값으로 제한 하시겠습니까? (0) | 2020.09.09 |
단위 테스트는 얼마나 깊습니까? (0) | 2020.09.08 |