国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

Java Web項目中Spring框架處理JSON格式數據的方法

2019-11-26 14:17:34
字體:
來源:轉載
供稿:網友

json是一種常見的傳遞格式,是一種鍵值對應的格式。并且數據大小會比較小,方便傳遞。所以在開發中經常會用到json。

首先看一下json的格式:

{key1:value1,key2:value2}

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

一般正常的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的映射路徑如果直接使用/*的話,會將相應的jsp屏蔽掉,所以一定得加個前綴以區別jsp與controller.

上面的json中如果有中文的話,會出現亂碼,所以則修改spring-servlet.xml配置文件,修改下AnnotationMethodHandlerAdapter的messageConverters即可,因為其默認采用的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>

經過這些步驟后,對json的處理就相當方便了。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 富锦市| 武陟县| 黄冈市| 庆城县| 高碑店市| 黑山县| 辽宁省| 普定县| 鄄城县| 云梦县| 武平县| 肇庆市| 错那县| 射洪县| 松阳县| 阿拉善左旗| 金平| 中西区| 阿坝县| 祁连县| 方城县| 新巴尔虎左旗| 安国市| 偃师市| 清新县| 民丰县| 阿拉善右旗| 甘德县| 神木县| 佛学| 长春市| 高淳县| 鱼台县| 肥城市| 通化市| 边坝县| 临江市| 北票市| 正定县| 昌邑市| 新丰县|