重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
注解RequestMapping中produces属性可以设置返回数据的类型以及编码,可以是json或者xml:
创新互联公司是一家专业提供友谊企业网站建设,专注与网站建设、成都做网站、H5场景定制、小程序制作等业务。10年已为友谊众多企业、政府机构等服务。创新互联专业网络公司优惠进行中。@RequestMapping(value="/xxx",produces = {"application/json;charset=UTF-8"})
或
@RequestMapping(value="/xxx",produces = {"application/xml;charset=UTF-8"})
但是必须要和@ResponseBody
注解一起使用才可以,不加@ResponseBody
注解相当于按照和返回String同名jsp页面解析自然就会报错。如果返过来,不加produces属性,只有@ResponseBody注解的话也是没有问题的,只是在浏览器中直接访问的时候有区别:
情况一:
@RequestMapping(value="/xxx",produces = {"application/json;charset=UTF-8"})
@ResponseBody
情况二:
@RequestMapping(value="/xxx")
@ResponseBody
区别很明显,第一种显示比较好看,当然这种接口不是这样用的,在调试阶段比较适合。
如果是xml格式也是浏览器显示有区别:
@RequestMapping(value="/xxx",produces = {"application/xml;charset=UTF-8"})
@ResponseBody
如果不加produces浏览器会把标签解析:
@RequestMapping(value="/xxx")
@ResponseBody
总的来说produces有两个好处:一个是浏览器查看方便(json自动格式化,带搜索),另一个可以防止中文乱码。
创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。