[SPRING] @PathVariable을 사용하여 spring-data-rest 검색 방법 경로를 구성하는 방법
SPRING@PathVariable을 사용하여 spring-data-rest 검색 방법 경로를 구성하는 방법
다음과 같이 매개 변수를 경로 변수로 전달하여 spring-data-rest 검색 방법 경로를 사용자 정의하고 싶습니다.
http://localhost:8080/orders/search/customers/{customerId}
findByCustomer(@PathVariable("customerId") Integer customer);
검색 리소스는 다음과 같이 링크를 나열합니다.
http://localhost:8080/orders/search/customers/%7BcustomerId%7D
경로 매개 변수로 검색 URL을 노출하는 방법은 무엇입니까?
해결법
-
==============================
1.다음과 비슷한 사용자 지정 처리기를 사용할 수 있습니다.
다음과 비슷한 사용자 지정 처리기를 사용할 수 있습니다.
@RepositoryRestController public class OrderController { @Autowired OrderRepository orderRepository; @GetMapping("/orders/search/customers/{id}") public @ResponseBody ResponseEntity<?> getByCustomers(@PathVariable Integer customer) { Order order = orderRepository.findOne(id); if(order == null) return ResponseEntity.status(HttpStatus.NOT_FOUND).body(null); Resource<Order> resource = new Resource<Order>(order); return ResponseEntity.ok(resource); } }
여기에 대한 자세한 내용은 여기를 참조하십시오.
-
==============================
2.요청 URL을 얻으려면 HttpServletRequest를 사용하십시오.
요청 URL을 얻으려면 HttpServletRequest를 사용하십시오.
findByCustomer(@PathVariable("customerId") Integer customer, HttpServletRequest request){ String request = request.getRequestURL().toString(); // StringBuffer, so use append if you want to... [...] }
또한 request.getQueryString ()을 사용하여? 뒤에 오는 쿼리 부분을 가져올 수 있습니다.
from https://stackoverflow.com/questions/39866926/how-to-configure-spring-data-rest-search-method-path-with-pathvariable by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] Http Response에 헤더를 추가하기 위해 Spring MVC의 Http Status 코드를 기반으로한다. (0) | 2019.05.05 |
---|---|
[SPRING] 스프링 컨트롤러에서 json 응답을 어떻게 보낼 수 있습니까? (0) | 2019.05.05 |
[SPRING] Grails 3에 임베디드 Tomcat 서버에 JNDI 추가하기 (0) | 2019.05.05 |
[SPRING] Spring 빈을 생성하면 ServletRequest 프로퍼티를 갖는다. (0) | 2019.05.05 |
[SPRING] JPA 엔티티 리스너에 대한 스프링 종속성 주입 (0) | 2019.05.05 |