SpringMVC 의 @ RequestBody 주석
요 며칠 동안 전단 의 친구 들 과 합작 하여 쿠키 를 사용 하여 비밀 번 호 를 기억 하 는 기능 을 썼 습 니 다. 전단 에서 데 이 터 를 보 내 왔 지만 제 배경 에서 받 은 데 이 터 는 null 입 니 다.이 유 는 전단 에서 json 데이터 형식 을 전 달 했 기 때 문 입 니 다. form - data 형식 이 아 닙 니 다. 설정 파일 에 만 이 말 을 추가 하면 자동 으로 json 을 대상 으로 바 꿀 수 있 을 것 이 라 고 생각 했 습 니 다.
text/html;charset=UTF-8
application/json;charset=utf-8
MappingJackson 2HttpMessageConverter 는 @ RequestBody 와 함께 사용 해 야 합 니 다.그때 앞부분 에 내 가 틀 리 지 않 았 다 고 말 하 니 정말 꿀 자신 감 이 었 다.
@ RequestBody 의 역할 을 소개 합 니 다. 이 주석 을 처음 사용 합 니 다. 1) 이 주석 은 Request 가 요청 한 body 부분 을 읽 는 데 사 용 됩 니 다. 자신 이 설정 한 MappingJackson 2HttpMessageConverter 를 사용 하여 해석 합 니 다.그 다음 에 해당 하 는 데 이 터 를 되 돌 릴 대상 에 연결 합 니 다. 여기 서 분석 한 데 이 터 를 Administrator 대상 에 연결 합 니 다. 2) MappingJackson 2HttpMessageConverter 가 돌아 온 대상 데 이 터 를 Controller 에 연결 하 는 방법 파라미터 에 사용 합 니 다.
public String save (@RequestBody Administrator administrator, HttpServletRequest httpServletRequest)
참고 로 @ Response Body 주해 작용: controller 에서 방법 을 되 돌려 주 는 대상 을 MappingJackson 2HttpMessage Converter 를 통 해 지정 한 형식 으로 변환 하여 response 대상 의 body 데이터 영역 에 기록 합 니 다.
3) get, post 방식 으로 제출 할 때 request header Content - Type 의 값 에 따라 판단 합 니 다. ① application / x - ww - form - urlencoded, 선택 할 수 있 습 니 다 (즉, 필요 하지 않 습 니 다. 이러한 상황 의 데이터 @ RequestParam, @ ModelAttribute 도 처리 할 수 있 습 니 다. 물론 @ RequestBody 도 처리 할 수 있 습 니 다).② multipart / form - data, 처리 할 수 없습니다 (즉, @ RequestBody 를 사용 하면 이러한 형식의 데 이 터 를 처리 할 수 없습니다).③ 다른 형식 은 (다른 형식 은 application / json, application / xml 등 포함) @ RequestBody 를 사용 하여 내 전단 js 의 header 를 처리 해 야 합 니 다.
xhr.setRequestHeader("Content-type", "application/json");
그래서 저 는 controller 에서 @ RequestBody 주 해 를 사용 해 야 돼 요.
참고 로 @ Response Body 주해 작용: controller 에서 방법 을 되 돌려 주 는 대상 을 MappingJackson 2HttpMessage Converter 를 통 해 지정 한 형식 으로 변환 하여 response 대상 의 body 데이터 영역 에 기록 합 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.