日期:2014-05-16 浏览次数:20368 次
开篇
之前的一篇博客:Androidannotation使用之@Rest获取资源及用户登录验证(一):http://blog.csdn.net/nupt123456789/article/details/24384713 主要写了Rest在用户登录的时候,需要JSESSION字段的问题。本博客主要写JSON格式的转换。
@Rest的参考文档:
https://github.com/excilys/androidannotations/wiki/Rest-API#rest
简介:
从上一篇博客中,我们可以看出,我们直接再浏览器中请求http://192.168.0.101:8080/cbvr/getUserInfoList.action 的时候,返回的字符串其实是JSON格式。我们上一篇博客,就是把它直接当String进行处理了,没有出现什么问题。当然,我们接下来,可以使用GSON对String进行解析,这没有什么问题。然而,我们通常想,我们换一个转换器不就行了吗?代码如下:
/* * $filename: UserService.java,v $ * $Date: 2014-4-20 $ * Copyright (C) ZhengHaibo, Inc. All rights reserved. * This software is Made by Zhenghaibo. */ package com.example.testaa; import org.androidannotations.annotations.rest.Accept; import org.androidannotations.annotations.rest.Post; import org.androidannotations.annotations.rest.Rest; import org.androidannotations.api.rest.MediaType; import org.androidannotations.api.rest.RestClientErrorHandling; import org.springframework.http.ResponseEntity; import org.springframework.http.converter.json.GsonHttpMessageConverter; /* *@author: ZhengHaibo *web: http://blog.csdn.net/nuptboyzhb *mail: zhb931706659@126.com *2014-4-20 Nanjing,njupt,China */ @Rest(rootUrl = "http://192.168.0.101:8080/cbvr", converters = {GsonHttpMessageConverter.class}) public interface UserService extends RestClientErrorHandling{ @Post("/getUserInfoList.action") @Accept(MediaType.APPLICATION_JSON) ResponseEntity<DataGrid> getUserInfoList(); }
05-02 16:58:32.644: W/System.err(7454): org.springframework.web.client.RestClientException: Could not extract response: no suitable HttpMessageConverter found for response type [com.example.testaa.DataGrid] and content type [text/html;charset=UTF-8]
response.setContentType("text/html;charset=UTF-8");
response.setContentType("application/json;charset=utf-8");
package com.example.testaa; /* *@author: ZhengHaibo *web: http://blog.csdn.net/nuptboyzhb *GitHub https://github.com/nuptboyzhb *mail: zhb931706659@126.com *2014-1-12 Nanjing,njupt,China */ public class Userinfo { /** * {field : 'yhm',title : '用户名',width : 150}, {field : 'pwd',title : '密码',width : 150}, {field : 'yhqx',title : '用户权限',width : 150}, {f