利用androidannotations的@Rest注解替换Spring Android RestTemplate

转载请注明 http://xuantan.iteye.com/admin/blogs/1826334

 

利用androidannotations的Rest注解替换手工建立Spring Android RestTemplate对象,不仅可以减少很多代码,同时使工程结构更简洁、严谨,利于复用。

 

自己构造RestTemplate的原生写法:

 

HttpHeaders requestHeaders = new HttpHeaders();
List<MediaType> acceptableMediaTypes = new ArrayList<MediaType>();
acceptableMediaTypes.add(MediaType.APPLICATION_JSON);
requestHeaders.setAccept(acceptableMediaTypes);
				
HttpEntity<?> requestEntity = new HttpEntity<Object>(requestHeaders);
				
RestTemplate restTemplate = new RestTemplate();
restTemplate.getMessageConverters().add(new MappingJackson2HttpMessageConverter());
				
ResponseEntity<User[]> responseEntity = restTemplate.exchange(url, HttpMethod.GET, requestEntity, User[].class);

 

 

利用androidannotations的Rest注解替换后的代码:

 

...
@RestService
RestApiService restApiService;
...
...
ResponseEntity<User[]> responseEntity = restApiService.getByStatus();

 RestApiService的代码为:

package com.taobao.together.service;

import java.util.List;

import org.springframework.http.ResponseEntity;
import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;


import com.googlecode.androidannotations.annotations.rest.Get;
import com.googlecode.androidannotations.annotations.rest.Rest;


import com.taobao.together.common.model.User;
/**
 * 类说明
 * @author xuantan.zym
 * @version V1.0 创建时间: 2013-3-8 下午2:33:18
 */
@Rest(rootUrl = "http://10.0.2.2:8080/together/api", converters = { MappingJackson2HttpMessageConverter.class })
public interface RestApiService {
	
	@Get("/user/getByStatus.do?status=1")
	ResponseEntity<User[]> getUsersByStatus();

}

 

 

 相关参考:

https://github.com/excilys/androidannotations/wiki/Rest-API

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值