• produces在@requestMapping中的使用方式和作用


    produces可能不算一个注解,因为什么呢,它是注解@requestMapping注解里面的属性项,

    它的作用是指定返回值类型,不但可以设置返回值类型还可以设定返回值的字符编码

    还有一个属性与其对应,就是consumes: 指定处理请求的提交内容类型(Content-Type),例如application/json, text/html;

    他们的使用方法如下:

    一、produces的例子

    produces第一种使用,返回json数据,下边的代码可以省略produces属性,因为我们已经使用了注解@responseBody就是返回值是json数据:

    1. @Controller
    2. @RequestMapping(value = "/pets/{petId}", method = RequestMethod.GET, produces="application/json")
    3. @ResponseBody
    4. public Pet getPet(@PathVariable String petId, Model model) {
    5. // implementation omitted
    6. }

    produces第二种使用,返回json数据的字符编码为utf-8.:
    1. @Controller
    2. @RequestMapping(value = "/pets/{petId}", produces="MediaType.APPLICATION_JSON_VALUE"+";charset=utf-8")
    3. @ResponseBody
    4. public Pet getPet(@PathVariable String petId, Model model) {
    5. // implementation omitted
    6. }

    二、consumes的例子(方法仅处理request Content-Type为“application/json”类型的请求。

    1. @Controller  
    2. @RequestMapping(value = "/pets", method = RequestMethod.POST, consumes="application/json")  
    3. public void addPet(@RequestBody Pet pet, Model model) {      
    4.     // implementation omitted  
    5. }  

  • 相关阅读:
    css之选择器及性能优化
    css之font
    css之background
    Oracle 学习笔记(十)
    数据库脚本开发日志模板 —— 项目需求 A
    Java 程序动态替换 docx 模板中定制值的实现例子
    Quartz 定时器 Cron 表达式 怎么破?
    Tomcat 启动报错;ERROR: transport error 202: bind failed: Address already in use
    Oracle 学习笔记(九)
    Oracle 学习笔记(八)
  • 原文地址:https://www.cnblogs.com/jpfss/p/9542292.html
Copyright © 2020-2023  润新知