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

Java Web項目中Spring框架處理JSON格式數(shù)據(jù)的方法

 更新時間:2016年05月25日 16:35:16   作者:godlike  
Spring MVC是個靈活的框架,返回JSON數(shù)據(jù)的也有很多五花八門的方式,這里我們來整理一個最簡單的Java Web項目中Spring框架處理JSON格式數(shù)據(jù)的方法:

json是一種常見的傳遞格式,是一種鍵值對應(yīng)的格式。并且數(shù)據(jù)大小會比較小,方便傳遞。所以在開發(fā)中經(jīng)常會用到j(luò)son。

首先看一下json的格式:

{key1:value1,key2:value2}

每一個建對應(yīng)一個值,每個鍵值對之間用逗號連接。并且最后一個鍵值對之后沒有逗號,整體需要有大括號括起來。

一般正常的servlet返回json時,會像下面這樣:

response.setContentType("text/JSON;charset=utf-8");
response.getWriter().print(gson.toJson(page));
response.getWriter().flush();
response.getWriter().close();
return null;

這樣相對來說比較麻煩,也不好封裝。新版spring返回json時,可以通過@ResponseBody直接返回,這點做得很不錯,大概代碼如下:

@Controller
@RequestMapping("/json")
public class JsonController {
  @RequestMapping(value="{provinceId}",method = RequestMethod.GET)
  @ResponseBody
  public String pagination(@PathVariable String provinceId){
    return getJsonData(provinceId);
  }
}

訪問方式如下:http://localhost:8080/spring3/action/json/1,有一點需要注意下,那就是訪問spring mvc的controller時中間加了個/action,那是因為DispatcherServlet的映射路徑如果直接使用/*的話,會將相應(yīng)的jsp屏蔽掉,所以一定得加個前綴以區(qū)別jsp與controller.

上面的json中如果有中文的話,會出現(xiàn)亂碼,所以則修改spring-servlet.xml配置文件,修改下AnnotationMethodHandlerAdapter的messageConverters即可,因為其默認(rèn)采用的iso8895-1的編碼,代碼如下:

<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
    <property name="webBindingInitializer">
      <bean class="com.mvc.commons.CommonsBindingInitializer" />
    </property>
    
    <property name="messageConverters">
      <list>
      <bean class="org.springframework.http.converter.StringHttpMessageConverter">
          <property name="supportedMediaTypes">
            <list>
              <value>text/plain;charset=UTF-8</value>
            </list>
          </property>
        </bean>
      </list>
    </property>
  </bean>

經(jīng)過這些步驟后,對json的處理就相當(dāng)方便了。

相關(guān)文章

  • Java生成UUID的常用方式示例代碼

    Java生成UUID的常用方式示例代碼

    UUID保證對在同一時空中的所有機器都是唯一的,通常平臺會提供生成的API,按照開放軟件基金會(OSF)制定的標(biāo)準(zhǔn)計算,用到了以太網(wǎng)卡地址、納秒級時間、芯片ID碼和許多可能的數(shù)字,下面這篇文章主要給大家介紹了關(guān)于Java生成UUID的常用方式,需要的朋友可以參考下
    2023-05-05
  • 詳解如何在SpringBoot中優(yōu)雅地重試調(diào)用第三方API

    詳解如何在SpringBoot中優(yōu)雅地重試調(diào)用第三方API

    作為后端程序員,我們的日常工作就是調(diào)用一些第三方服務(wù),將數(shù)據(jù)存入數(shù)據(jù)庫,返回信息給前端。本文為大家介紹了如何在SpringBoot中優(yōu)雅地重試調(diào)用第三方API,需要的可以參考一下
    2022-12-12
  • 劍指Offer之Java算法習(xí)題精講鏈表與字符串及數(shù)組

    劍指Offer之Java算法習(xí)題精講鏈表與字符串及數(shù)組

    跟著思路走,之后從簡單題入手,反復(fù)去看,做過之后可能會忘記,之后再做一次,記不住就反復(fù)做,反復(fù)尋求思路和規(guī)律,慢慢積累就會發(fā)現(xiàn)質(zhì)的變化
    2022-03-03
  • 盤點幾種常見的java排序算法

    盤點幾種常見的java排序算法

    所謂排序就是使一串記錄,按照其中的某個或某些關(guān)鍵字的大小,遞增或遞減的排列起來的操作,下面這篇文章主要給大家介紹了幾種常見的java排序算法的相關(guān)資料,需要的朋友可以參考下
    2021-11-11
  • Spring?Boot如何接入Security權(quán)限認(rèn)證服務(wù)

    Spring?Boot如何接入Security權(quán)限認(rèn)證服務(wù)

    Spring Security?是一個高度可定制的身份驗證和訪問控制的框架,提供了完善的認(rèn)證機制和方法級的授權(quán)功能,本文通過案例將Spring Security整合到SpringBoot中,要實現(xiàn)的功能就是在認(rèn)證服務(wù)器上登錄,然后獲取Token,再訪問資源服務(wù)器中的資源,感興趣的朋友一起看看吧
    2024-07-07
  • SpringCloud配置客戶端ConfigClient接入服務(wù)端

    SpringCloud配置客戶端ConfigClient接入服務(wù)端

    這篇文章主要為大家介紹了SpringCloud配置客戶端ConfigClient接入服務(wù)端,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08
  • MybatisPlus3.5.5與pagehelper?starter2.1.0沖突的問題解決

    MybatisPlus3.5.5與pagehelper?starter2.1.0沖突的問題解決

    在使用MybatisPlus?3.5.5與PageHelper?Starter?2.1.0時,由于引用了不同版本的jsqlparser庫(4.6與4.7),會導(dǎo)致運行時錯誤,解決方案涉及確認(rèn)依賴版本,本文就來介紹一下,感興趣的同學(xué)可以下載學(xué)習(xí)
    2024-10-10
  • 基于spring boot 2和shiro實現(xiàn)身份驗證案例

    基于spring boot 2和shiro實現(xiàn)身份驗證案例

    這篇文章主要介紹了基于spring boot 2和shiro實現(xiàn)身份驗證案例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-04-04
  • 解決IDEA使用Spring Initializr創(chuàng)建項目時無法連接到https://start.spring.io的問題

    解決IDEA使用Spring Initializr創(chuàng)建項目時無法連接到https://start.spring.io的問

    這篇文章主要介紹了解決IDEA使用Spring Initializr創(chuàng)建項目時無法連接到https://start.spring.io的問題,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-04-04
  • 微信企業(yè)號驗證/發(fā)送/接收消息

    微信企業(yè)號驗證/發(fā)送/接收消息

    這篇文章主要介紹了微信企業(yè)號驗證/發(fā)送/接收消息的相關(guān)資料,非常不錯具有參考借鑒價值,需要的朋友可以參考下
    2016-10-10

最新評論

汾阳市| 徐闻县| 炎陵县| 日照市| 吉安市| 平定县| 眉山市| 淳安县| 甘孜| 天津市| 盐津县| 调兵山市| 法库县| 道孚县| 房山区| 九江市| 册亨县| 卢龙县| 张家港市| 通海县| 公主岭市| 邵阳市| 亚东县| 永新县| 芦山县| 秦安县| 金坛市| 芜湖市| 芜湖县| 诸城市| 政和县| 申扎县| 丰都县| 遵义县| 凭祥市| 轮台县| 海盐县| 兰溪市| 彭泽县| 临泉县| 丰镇市|