RequestMapping中produces屬性作用


注解RequestMapping中produces屬性可以設置返回數據的類型以及編碼,可以是json或者xml:


   
   
  
  
          
  1. @RequestMapping(value="/xxx",produces = {"application/json;charset=UTF-8"})
  2. @RequestMapping(value="/xxx",produces = {"application/xml;charset=UTF-8"})

但是必須要和@ResponseBody注解一起使用才可以,不加@ResponseBody注解相當於按照和返回String同名jsp頁面解析自然就會報錯。如果返過來,不加produces屬性,只有@ResponseBody注解的話也是沒有問題的,只是在瀏覽器中直接訪問的時候有區別:
情況一:


   
   
  
  
          
  1. @RequestMapping(value="/xxx",produces = {"application/json;charset=UTF-8"})
  2. @ResponseBody

RequestMapping中produces屬性作用
情況二:


   
   
  
  
          
  1. @RequestMapping(value="/xxx")
  2. @ResponseBody

RequestMapping中produces屬性作用
區別很明顯,第一種顯示比較好看,當然這種接口不是這樣用的,在調試階段比較適合。
如果是xml格式也是瀏覽器顯示有區別:


   
   
  
  
          
  1. @RequestMapping(value="/xxx",produces = {"application/xml;charset=UTF-8"})
  2. @ResponseBody

RequestMapping中produces屬性作用
如果不加produces瀏覽器會把標簽解析:


   
   
  
  
          
  1. @RequestMapping(value="/xxx")
  2. @ResponseBody

RequestMapping中produces屬性作用
總的來說produces有兩個好處:一個是瀏覽器查看方便(json自動格式化,帶搜索),另一個可以防止中文亂碼。

原文地址:https://blog.csdn.net/bingguang1993/article/details/82253639


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM