zoukankan      html  css  js  c++  java
  • SpringMVC进行json数据交互

    请求key/value、输出json。此方法在开发中比较常用。

    在注解适配器中加入messageConverters

    1 <!--注解适配器 -->
    2     <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
    3         <property name="messageConverters">
    4         <list>
    5         <bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"></bean>
    6         </list>
    7         </property>
    8     </bean>
    View Code

    注意:如果使用<mvc:annotation-driven /> 则不用定义上边的内容。

    Controller方法:

     1 package cn.itcast.ssm.controller;
     2 
     3 import org.springframework.stereotype.Controller;
     4 import org.springframework.web.bind.annotation.RequestBody;
     5 import org.springframework.web.bind.annotation.RequestMapping;
     6 import org.springframework.web.bind.annotation.ResponseBody;
     7 
     8 import cn.itcast.ssm.po.ItemsCustom;
     9 
    10 @Controller
    11 public class JsonTest {
    12     
    13     //请求json串(商品信息),输出json(商品信息)
    14     //@RequestBody将请求的商品信息的json串转成itemsCustom对象
    15     //@ResponseBody将itemsCustom转成json输出
    16     @RequestMapping("/requestJson")
    17     public @ResponseBody ItemsCustom requestJson(@RequestBody ItemsCustom itemsCustom){
    18         
    19         //@ResponseBody将itemsCustom转成json输出
    20         return itemsCustom;
    21     }
    22     
    23     //请求key/value,输出json
    24     @RequestMapping("/responseJson")
    25     public @ResponseBody ItemsCustom responseJson(ItemsCustom itemsCustom){     
    27         //@ResponseBody将itemsCustom转成json输出
    28         return itemsCustom;
    29     }
    30 
    31 }


    Restful的支持

    示例:定义controller,进行url映射使用REST风格的url,将查询商品信息的id传入controller。输出json使用@ResponseBody将java对象输出json。

    @RequestMapping(value="/ viewItems/{id}"):{×××}占位符,请求的URL可以是“/viewItems/1”或“/viewItems/2”,通过在方法中使用@PathVariable获取{×××}中的×××变量。

    @PathVariable用于将请求URL中的模板变量映射到功能处理方法的参数上。

    1 @RequestMapping("/viewItems/{id}") 
    2     public @ResponseBody ItemsCustom viewItems(@PathVariable("id") String id,Model model) throws Exception{
    3         //方法中使用@PathVariable获取useried的值,使用model传回页面
    4         //调用 service查询商品信息
    5         ItemsCustom itemsCustom = itemsService.findItemsById(id);
    6         return itemsCustom;
    7 }

    tips:如果RequestMapping中表示为"/viewItems/{id}",id和形参名称一致,@PathVariable不用指定名称。

  • 相关阅读:
    Kubernetes 部署 Kafka & Zookeeper & Kafka Manager
    prometheus-operator监控traefik-Ingress组件状态
    k8s与dns--coredns的一些实战经验
    kubernetes Tekton-CI/CD 持续集成流水线
    jenkins pipeline语法
    (Go)16.Redis连接池的使用
    (Go)15.golang printf 格式化输出
    (Go)14. 如何读取YAML,JSON,INI等配置文件
    Dubbo引用Javassist外部框架
    Dubbo之Filter 原理
  • 原文地址:https://www.cnblogs.com/ustc-anmin/p/10494668.html
Copyright © 2011-2022 走看看