Spring MVC는 SpringFrameWork의 후속 제품으로 Spring Web Flow에 통합되었습니다. Spring 프레임워크는 웹 애플리케이션 구축을 위한 모든 기능을 갖춘 MVC 모듈을 제공합니다. Spring의 플러그형 MVC 아키텍처를 사용하면 WEB 개발에 Spring을 사용할 때 Spring의 SpringMVC 프레임워크를 사용하거나 Struts1, Struts2 등과 같은 다른 MVC 개발 프레임워크를 통합하도록 선택할 수 있습니다.
1. 첫 번째 방법은 spring2 시대의 제품입니다. 즉, 각 json 뷰 컨트롤러는 Jsoniew로 구성됩니다.
예:
또는
Jackson의 jar 패키지도 사용해야 합니다.
2. 두 번째 유형은 JSON 도구를 사용하여 객체를 json으로 직렬화합니다. 일반적인 도구에는 Jackson, fastjson 및 gson이 있습니다.
HttpServletResponse를 사용한 다음 response.getOutputStream() 또는 response.getWriter()를 가져옵니다
직접 출력합니다.
예:
public class JsonUtil { private static Gson gson=new Gson(); /** * @MethodName : toJson * @Description : 将对象转为JSON串,此方法能够满足大部分需求 * @param src * :将要被转化的对象 * @return :转化后的JSON串 */ public static String toJson(Object src) { if (src == null) { return gson.toJson(JsonNull.INSTANCE); } return gson.toJson(src); } }
3. spring mvc3 어노테이션을 사용하는 세 번째 방법 @ResponseBody
예:
@ResponseBody @RequestMapping("/list") public List<String> list(ModelMap modelMap) { String hql = "select c from Clothing c "; Page<Clothing> page = new Page<Clothing>(); page.setPageSize(6); page = clothingServiceImpl.queryForPageByHql(page, hql); return page.getResult(); }
그런 다음 spring mvc의 기본 구성을 사용하여 json을 반환하지만 jackson jar 패키지가 필요합니다.
참고: springMVC-servlet.xml에서
RequestMappingHandlerAdapter를 수동으로 주입하는 경우 이렇게 설정할 수 있습니다
구성은 다음과 같습니다.
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter" p:ignoreDefaultModelOnRedirect="true" > <property name="messageConverters"> <list> <bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"/> </list> </property> </bean>
패키지 추가
jackson-mapper-asl-*.jar
jackson-core-asl-*.jar
사용법은 점점 단순해지고, 프로그래머는 점점 멍청해지고 있다고 볼 수 있는데, 이게 좋은 것인지 나쁜 것인지 모르겠습니다...
위 내용은 SpringMVC가 편집자가 공유한 json 데이터를 반환하는 세 가지 방법입니다. 마음에 드셨으면 좋겠습니다.