最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringMVC中解決@ResponseBody注解返回中文亂碼問題

 更新時間:2017年04月11日 11:12:03   作者:木葉之榮  
這篇文章主要介紹了SpringMVC中解決@ResponseBody注解返回中文亂碼問題, 小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

昨天在做項目的時候用@ResponseBody注解,發(fā)現(xiàn)返回頁面上的中文是亂碼,解決過程也是讓我很郁悶?。?!特此記錄一些。目前有下面幾種解決方案:

@RequestMapping的produces方法

第一種解決方案是使用@RequestMapping注解的produces方法。寫法如下:

復制代碼 代碼如下:

@RequestMapping(value = "testPersonalValidtor.do",produces = "application/json;charset=utf-8")  

在方法上加上這個注解就可以了。但是這樣寫的話有限制,只能在特定的方法上面使用。如果需要全局都使用的話,需要修改SpringMVC的配置文件。

使用messageConverters

第二種解決辦法是使用HttpMessageConverter接口的相關實現(xiàn)類。我們先看配置文件中的配置信息。

<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter" > 
 <property name="messageConverters"> 
  <list> 
   <bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter" /> 
   <bean class="org.springframework.http.converter.StringHttpMessageConverter"> 
    <property name="supportedMediaTypes"> 
     <list> 
      <value>text/plain;charset=utf-8</value> 
      <value>text/html;charset=UTF-8</value> 
     </list> 
    </property> 
   </bean> 
  </list> 
 </property> 
</bean> 

并且需要在Maven依賴中配置上Jackjson的依賴。

<dependency> 
 <groupId>org.codehaus.jackson</groupId> 
 <artifactId>jackson-mapper-asl</artifactId> 
 <version>1.9.13</version> 
</dependency> 
<dependency> 
 <groupId>org.codehaus.jackson</groupId> 
 <artifactId>jackson-core-asl</artifactId> 
 <version>1.9.13</version> 
</dependency> 

昨天讓我郁悶的是,我這樣配置了之后確依然是不生效。后來才發(fā)現(xiàn)是位置放的不對,需要把這段配置放到<mvc:annotation-driven />的上面。真是很無語的感覺!!!

注意:一定要放到<mvc:annotation-driven />的上面,否則不會生效。

使用<mvc:message-converters>

還有一種方式是在SpringMVC的配置文件中的<mvc:annotation-driven>中加入<mvc:message-converters>的配置。具體配置內(nèi)容如下:

<!-- SpringMVC注解驅動 --> 
<mvc:annotation-driven> 
 <mvc:message-converters> 
  <bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"/> 
  <bean class="org.springframework.http.converter.StringHttpMessageConverter"> 
   <property name="supportedMediaTypes"> 
    <list> 
     <value>text/plain;charset=utf-8</value> 
     <value>text/html;charset=UTF-8</value> 
    </list> 
   </property> 
  </bean> 
 </mvc:message-converters> 
</mvc:annotation-driven> 

注意:始用這種配置的時候,需要去掉RequestMappingHandlerMapping、RequestMappingHandlerAdapter或者DefaultAnnotationHandlerMapping、AnnotationMethodHandlerAdapter的Bean配置,要不然可能會不生效。

另外:對于請求映射處理類返回類型可以是String也可以是Object(如果Object是JavaBean的話,SpringMVC會用Jackson來轉換成json字符串).例子如下:

@RequestMapping(value = "testPersonalValidtor.do") 
@ResponseBody 
//直接返回對象 
public Object testPersonalValidtor(@Valid PersonScope personScope, BindingResult bindingResult){ 
 if(bindingResult.hasErrors()){ 
  StringBuffer sb = new StringBuffer(); 
  for(ObjectError objectError : bindingResult.getAllErrors()){ 
   sb.append(((FieldError)objectError).getField() +" : ").append(objectError.getDefaultMessage()); 
  } 
  return sb.toString(); 
 }else{ 
  return personScope; 
 } 
} 

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Java synchronized偏向鎖的核心原理詳解

    Java synchronized偏向鎖的核心原理詳解

    這篇文章主要為大家詳細介紹了Java synchronized偏向鎖的核心原理,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • Java中對list元素進行排序的方法詳解

    Java中對list元素進行排序的方法詳解

    這篇文章主要介紹了Java中對list元素進行排序的方法詳解,是Java入門學習中的基礎知識,需要的朋友可以參考下
    2015-09-09
  • Java如何獲取HttpServletRequest請求參數(shù)

    Java如何獲取HttpServletRequest請求參數(shù)

    我們常需要接口接收第三方推送的數(shù)據(jù),由于第三方可能不具備開發(fā)能力,我們需要自行解析推送的數(shù)據(jù)格式,通過HttpServletRequest,我們可以解析字符串、JSON、XML以及文件等多種數(shù)據(jù)類型,本文介紹了如何在Java中使用HttpServletRequest獲取請求參數(shù),感興趣的朋友一起看看吧
    2024-11-11
  • 解決Request獲取請求數(shù)據(jù)中文亂碼問題

    解決Request獲取請求數(shù)據(jù)中文亂碼問題

    這篇文章主要介紹了Request獲取請求數(shù)據(jù)中文亂碼問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • Java獲取視頻時長及截取幀截圖詳解

    Java獲取視頻時長及截取幀截圖詳解

    這篇文章主要介紹了Java獲取視頻時長及截取幀截圖詳解,以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。,需要的朋友可以參考下
    2019-06-06
  • Java實現(xiàn)常用加密算法——單向加密算法MD5和SHA

    Java實現(xiàn)常用加密算法——單向加密算法MD5和SHA

    本篇文章主要介紹了Java實現(xiàn)常用加密算法——單向加密算法MD5和SHA,信息加密后數(shù)據(jù)更安全,需要的朋友可以參考下。
    2016-10-10
  • java使用spring實現(xiàn)發(fā)送mail的方法

    java使用spring實現(xiàn)發(fā)送mail的方法

    這篇文章主要介紹了java使用spring實現(xiàn)發(fā)送mail的方法,涉及java基于spring框架發(fā)送郵件的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-10-10
  • Java程序圖形用戶界面設計之按鈕與布局

    Java程序圖形用戶界面設計之按鈕與布局

    圖形界面(簡稱GUI)是指采用圖形方式顯示的計算機操作用戶界面。與早期計算機使用的命令行界面相比,圖形界面對于用戶來說在視覺上更易于接受,本篇精講Java語言中關于圖形用戶界面的按鈕和布局部分
    2022-02-02
  • 輕松掌握Java代理模式

    輕松掌握Java代理模式

    這篇文章主要幫助大家輕松掌握Java代理模式,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • 前端存token后端獲取token代碼實例(Spring?Boot)

    前端存token后端獲取token代碼實例(Spring?Boot)

    Token其實就是訪問資源的憑證,一般是用戶通過用戶名和密碼登錄成功之后,服務器將登陸憑證做數(shù)字簽名,加密之后得到的字符串作為token,這篇文章主要給大家介紹了關于前端存token,Spring?Boot后端獲取token的相關資料,需要的朋友可以參考下
    2024-07-07

最新評論

陈巴尔虎旗| 临湘市| 长沙县| 渑池县| 昌黎县| 尼玛县| 五峰| 清原| 丹凤县| 延津县| 福安市| 山东省| 临漳县| 武强县| 日土县| 沾化县| 阜阳市| 惠安县| 霍城县| 揭西县| 应用必备| 潜山县| 潜山县| 富阳市| 拉萨市| 英超| 荣昌县| 灵丘县| 长春市| 永定县| 阿巴嘎旗| 晋江市| 海宁市| 宜君县| 申扎县| 项城市| 纳雍县| 宁陕县| 迁西县| 临夏市| 唐海县|