Spring Boot efficient search API
1.0.0
리소스 컬렉션은 막대한 경우가 많으며, 일부 데이터를 검색해야 할 경우 항상 전체 목록을 가져와서 특정 항목을 찾아보는 것은 그리 효율적이지 않습니다. 그러므로 우리는 최적화된 검색 API를 설계해야 합니다.
필터링:
GET /api/cars ? country=Japan
GET /api/cars ? createDate=2019-11-11
정렬:
GET /api/cars ? sort=createDate,asc
GET /api/cars ? sort=createDate,desc
페이징:
GET /api/cars ? limit=100
GET /api/cars ? offset=2
기능 결합:
GET /api/cars ? country=Japan & sort=createDate,desc & limit=100 & offset=2
두 번째 페이지부터 시작하여 생성 날짜를 기준으로 내림차순으로 정렬된 일본산 자동차 100대 목록의 결과입니다(기록 101-200).
$ git clone https://github.com/Raouf25/Spring-Boot-efficient-search-API.git
$ docker build -t= " spring-boot-efficient-search-api " --force-rm=true .
이 명령은 Maven 빌드를 실행하여 JAR 패키지를 생성하고 Docker 이미지를 빌드합니다.
참고: 초기 명령으로 DockerHub에서 기본 이미지를 다운로드하는 데 시간이 걸릴 수 있습니다.
$ docker run -p 8080:8080 -it --rm spring-boot-efficient-search-api
$ curl localhost:8080/api/cars/1
응답:
{
"id" : 1 ,
"manufacturer" : " Acura " ,
"model" : " Integra " ,
"type" : " Small " ,
"country" : " Japan " ,
"createDate" : " 1931-02-01 "
}
docker stop $( docker container ls | grep " spring-boot-efficient-search-api:* " | awk ' { print $1 } ' )
이 프로젝트는 https://spring-boot-efficient-search-api.fly.dev/api/cars에 배포됩니다.
시도해 보세요: 데모 링크
도커 이미지: raouf25/spring-boot-efficient-search-api
cURL 및 jq를 사용하여 API를 가져오고, 실행하고, 쿼리하려면 Docker 명령 섹션을 참조하세요.
자세한 내용은 이 중간 게시물을 참조하세요.
스프링 부트 효율적인 검색 Api Copyright © 2020 by Abderraouf Makhlouf [email protected]