首页 > 编程语言 > 详细

springmvc 梳理6--返回json数据

时间:2021-01-26 15:20:21      阅读:33      评论:0      收藏:0      [点我收藏+]

pom.xml

<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.8.sec10</version>
</dependency>

 

 

例子:

加上@ResponseBody,return的东西,不会走视图解析器,也就是不会去找视图了,而是将处理的结果放在响应体中,直接返回

@RequestMapping(value = "/add")
    @ResponseBody
    public String addUser(Integer id,String username,String password,HttpServletRequest request) throws Exception {
    //模型里封装数据
        request.setAttribute("user",new User(id,username,password));
        return "<h1>haha<h1>";
    }

 

 

 

技术分享图片

 

 

 

 

 

 

修改

技术分享图片

 

 技术分享图片

 

 

 

 

 

 

修改2

@RequestMapping(value = "/add")
    @ResponseBody
    public String addUser(Integer id,String username,String password,HttpServletRequest request) throws Exception {
    //模型里封装数据
        User user = new User(id,username,password);
        String userStr = JSONObject.toJSONString(user);
        return userStr;
    }

 

技术分享图片

 

 

 

 

 

 

 

但是每次这么写还是比较麻烦

给容器注入一个消息转换的bean

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
https://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/mvc
https://www.springframework.org/schema/mvc/spring-mvc.xsd">
    <!-- 自动扫包 -->
    <context:component-scan base-package="com.xinzhi"/>
    <!-- 让Spring MVC不处理静态资源 -->
    <mvc:default-servlet-handler />

    <!-- 让springmvc自带的注解生效 -->
    <mvc:annotation-driven >
        <mvc:message-converters>
            <bean id="fastjson"
                  class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
                <property name="supportedMediaTypes">
                    <list>
                        <value>text/html;charset=UTF-8</value>
                        <value>application/json;charset=UTF-8</value>
                    </list>
                </property>
            </bean>
        </mvc:message-converters>
    </mvc:annotation-driven>


    <!-- 处理映射器 -->
    <bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>
    <!-- 处理器适配器 -->
    <bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"/>
    <!--视图解析器:DispatcherServlet给他的ModelAndView-->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"
          id="InternalResourceViewResolver">
        <!--前缀-->
        <property name="prefix" value="/WEB-INF/page/"/>
        <!--后缀-->
        <property name="suffix" value=".jsp"/>
    </bean>


</beans>
技术分享图片
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
https://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/mvc
https://www.springframework.org/schema/mvc/spring-mvc.xsd">
    <!-- 自动扫包 -->
    <context:component-scan base-package="com.xinzhi"/>
    <!-- 让Spring MVC不处理静态资源 -->
    <mvc:default-servlet-handler />

    <!-- 让springmvc自带的注解生效 -->
    <mvc:annotation-driven >
        <mvc:message-converters>
            <bean id="fastjson"
                  class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
                <property name="supportedMediaTypes">
                    <list>
                        <value>text/html;charset=UTF-8</value>
                        <value>application/json;charset=UTF-8</value>
                    </list>
                </property>
            </bean>
        </mvc:message-converters>
    </mvc:annotation-driven>


    <!-- 处理映射器 -->
    <bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>
    <!-- 处理器适配器 -->
    <bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"/>
    <!--视图解析器:DispatcherServlet给他的ModelAndView-->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"
          id="InternalResourceViewResolver">
        <!--前缀-->
        <property name="prefix" value="/WEB-INF/page/"/>
        <!--后缀-->
        <property name="suffix" value=".jsp"/>
    </bean>


</beans>
springmvc-servlet.xml

 

 

测试:

@RequestMapping(value = "/add")
    @ResponseBody
    public User addUser(Integer id,String username,String password,HttpServletRequest request) throws Exception {
    //模型里封装数据
        return new User(id,username,password);
    }

 

 

 

 

 

技术分享图片

 

springmvc 梳理6--返回json数据

原文:https://www.cnblogs.com/Master-Sun/p/14329931.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!