首页 > 编程知识 正文

produces是什么意思啊,springmvc经典面试题

时间:2023-05-06 14:02:16 阅读:112131 作者:3168

@ request mapping (value='/produces ',produces='application/json ' )表示功能处理方法为json格式的数据,在这种情况下,为请求标头中的“AAA

@ request mapping (value='/produces ',produces='application/xml ' )表示功能处理方法是xml格式的数据,在这种情况下,为请求标头接受

与使用@RequestMapping中的“headers=' accept=application/JSON '”相比,此方法更能表明您的目的。

服务器控制器代码cn.javass.chapter6. web.controller.consumes produces.produces controller;

客户端代码类似于以前的Content-Type客户端。 有关详细信息,请参阅ProducesController.java代码。

甜蜜的冥王星有以下Accept头部:

Accept:text/html,application/xml,application/json

produces的匹配text/htmlAPP/XMLAPP/JSON按以下顺序进行

接受: APP/XML; q=0.5,APP/JSon; q=0.9,text/html

produces的匹配text/htmlAPP/JSONAPP/XML按以下顺序进行

q参数是介质类型的质量系数,越大,优先级越高(0到1 )。

Accept:*/*,text/*,text/html

按照以下步骤进行produces的匹配text/html text/* */*

也就是说,匹配规则是最明确的优先匹配。

有关代码的详细信息,请参阅ProducesPrecedenceController1、ProducesPrecedenceController2和ProducesPrecedenceController3。

三.窄化时是覆盖而不是继承

类级别映射为@requestmapping(value='/narrow ', produces='text/html ' ),方法级别为@ request mapping (produces=' applicating ),并且请求标头“accept : application”

有关详细信息,请参阅cn.javass.chapter6. web.controller.consumes produces.narrow controller。

仅涵盖生产者/消费者模式,其他使用方式为继承,如headers、params等为继承。

四、配合使用是“或”的关系

@ request mapping (produces={ ' text/html ',' application/json'} )可以是“Accept:text/html”或“accept 3360 apt”

五.问题

消耗的数据,例如JSON数据、XML数据,都是读取我们要求的InputStream,根据需要自己转换为合适的模型数据,所以很麻烦;

生产数据(如JSON数据和XML数据)将模型数据转换为数据(如json/xml ),然后输出响应流也很麻烦。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。