[SPRING] Spring에서 POST 요청을 처리하는이 REST 메서드는 정확히 어떻게 작동하나요?
SPRINGSpring에서 POST 요청을 처리하는이 REST 메서드는 정확히 어떻게 작동하나요?
Spring Core 인증을 받기 위해 공부하고 있으며 Spring MVC에서 ** RESTful webapp *에 대한 연습과 관련하여 의심의 여지가 있습니다.
따라서이 예제에서는 새 Account 개체를 만드는 다음 메서드를 사용합니다.
/**
* Creates a new Account, setting its URL as the Location header on the
* response.
*/
@RequestMapping(value = "/accounts", method = RequestMethod.POST)
@ResponseStatus(HttpStatus.CREATED)
public HttpEntity<String> createAccount(@RequestBody Account newAccount,
@Value("#{request.requestURL}") StringBuffer url) {
Account account = accountManager.save(newAccount);
return entityWithLocation(url, account.getEntityId());
}
나는 그것을 안다.
편집 1 :
Location With () 메소드가있는 엔티티는 이전 메소드와 동일한 클래스에 정의되어 있으며이 코드는 다음과 같습니다.
private HttpEntity<String> entityWithLocation(StringBuffer url,
Object resourceId) {
// Configure and return an HttpEntity object - it will be used to build
// the HttpServletResponse
HttpHeaders headers = new HttpHeaders();
headers.setLocation(getLocationForChildResource(url, resourceId));
return new HttpEntity<String>(headers);
}
해결법
-
==============================
1.아래는 귀하의 질문에 대한 나의 이해입니다.
아래는 귀하의 질문에 대한 나의 이해입니다.
이 점과 관련하여 귀하의 이해가 정확합니다.
그것은 request.getRequestURL ()과 같습니다. API 참조
이 메소드 내부의 코드에 따라. HTTP 요청이나 응답 엔티티 (헤더와 본문 포함)를 나타내는 HttpEntity 객체를 반환합니다.이 경우 응답입니다. 메소드 내에서 작성된 자원 (계정)의 위치를 추가했습니다.
from https://stackoverflow.com/questions/28650149/how-exactly-works-this-rest-method-that-handle-a-post-request-in-spring by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] 자바 Aspectj는 메소드에서 사용되는 리턴 값 (0) | 2019.05.24 |
---|---|
[SPRING] Spring 보안에서 authentication-success-handler-ref와 동등한 커스텀 필터 사용법 (0) | 2019.05.24 |
[SPRING] Angularjs 파일 업로드가 작동하지 않습니다. (0) | 2019.05.24 |
[SPRING] Spring과 Hibernate로 세션 팩토리를 사용하여 여러 데이터베이스 연결을 처리하는 방법 (0) | 2019.05.24 |
[SPRING] jsp에서 액세스 할 수없는 ModelAttributes (0) | 2019.05.24 |