SpringMVC(3): 반환값 유형과 json 상호작용
18516 단어 SSM
문서 목록
package com.zmysna.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.View;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Map;
@Controller
public class MethodReturnController {
/**
* 1. String
* : controller ,
*/
@RequestMapping("returnMapping")
public String returnString() {
System.out.println(" ");
return "success";
}
/**
* 2. void
* controller request response , request response :
*/
@RequestMapping("returnVoid")
public void returnVoid(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//
request.getRequestDispatcher("/pages/success.jsp").forward(request,response);
//
response.sendRedirect("/pages/success.jsp");
}
/**
* model modelMap ExtendedModelMap。 request 。
*/
@RequestMapping("model")
public String modelTest(Model model, ModelMap modelMap) {
model.addAttribute("model", "modelValue");
modelMap.addAttribute("modelMap", "modelMapValue");
return "success";
}
/**
* 3. ModelAndView
* ModelAndView SpringMVC ,
*/
@RequestMapping("mv")
public ModelAndView mv() {
ModelAndView mv = new ModelAndView();
// request
mv.addObject("mv","mv");
//
mv.setViewName("success");
return mv;
}
}
보기 인터페이스 success.jsp
success
${model}
${modelMap}
${mv}
2.springmvc의 전송과 리셋
컨트롤러가 되돌아와서 String 되돌아오는 값을 제공할 때 기본적으로 전송을 요청하고 되돌아오는 값은 논리적인 보기 이름으로 보기 해상도를 통해 실제 보기로 해석됩니다.forward를 사용한다면 경로 이름은 실제 보기 이름이어야 합니다.redirect를 사용하면 경로 이름이 실제 보기 이름과 같은 방향을 바꿀 수 있습니다
@Controller
public class ForwardAndRedirectController {
@RequestMapping("forward")
public String forwardTest(){
System.out.println(" ");
return "forward:/pages/success.jsp";
}
@RequestMapping("redirect")
public String RedirectTest() {
System.out.println(" ");
return "redirect:/pages/success.jsp";
}
}
3. json 데이터를 수신하고 json 데이터를 되돌려줍니다
springmvc는 기본적으로 HttpMessageConverter 메시지 변환기를 사용하여 json 형식의 데이터를 변환합니다.잭슨 의존 패키지 지원에 가입해야 합니다.마ven을 사용하여 의존 가져오기
<dependency>
<groupId>com.fasterxml.jackson.coregroupId>
<artifactId>jackson-coreartifactId>
<version>2.9.0version>
dependency>
<dependency>
<groupId>com.fasterxml.jackson.coregroupId>
<artifactId>jackson-databindartifactId>
<version>2.9.0version>
dependency>
<dependency>
<groupId>com.fasterxml.jackson.coregroupId>
<artifactId>jackson-annotationsartifactId>
<version>2.9.0version>
dependency>
success
${model}
${modelMap}
${mv}
ajaxPost
$(function () {
$("#ajaxPost").click(function () {
$.post({
//
url: "/responseBodyJson",
// ajax
data: '{"id":100,"name":"jack","money":9.9}',
//
dataType: "json",
//
contentType: "application/json;charset=utf-8",
// json
success: function (jsn) {
alert("jsn=" + jsn + "; jsn.id=" + jsn.id + ";")
jsn.name = "+jsn.name+";
jsn.money = "+jsn.money)";
}
});
});
});
@Controller
public class JsonController {
@RequestMapping(value = "responseBodyJson")
@ResponseBody
public User body(@RequestBody User user) {
System.out.println(user);
return user;
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
ssm에서 ansible 해 본 메모 (그냥 메모)SSM EC2에 SSM 에이전트를 넣고 EC2를 SSM의 관리하에 놓습니다. SSM 관리형 인스턴스에서 볼 수 있다면 OK 참고 링크 S3 버킷 생성 Ansible 템플릿을 zip으로 만들어 S3에 배치하기 위해. ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.