`
zhangym124
  • 浏览: 343631 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

利用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

 

2
0
分享到:
评论
2 楼 zhangym124 2013-12-04  
yanfei19880812 写道
请问 服务器返回的内容是json格式的么

是的。
1 楼 yanfei19880812 2013-12-04  
请问 服务器返回的内容是json格式的么

相关推荐

    Androidannotation使用之@Rest与服务器交互的JSON数据转换

    本文将深入探讨`@Rest`注解以及如何利用它来实现服务器间的JSON数据转换。 首先,`@Rest`注解是AndroidAnnotation库的一部分,这个库是基于Java注解的框架,它能自动处理许多常见的Android任务,如Activity的生命...

    Androidannotation使用Rest注解(一)

    总结起来,AndroidAnnotation的@Rest注解为Android开发者提供了一种简洁的方式去构建RESTful客户端,简化了网络请求的代码。同时,结合自定义逻辑,可以轻松处理用户登录验证等复杂场景。通过这种方式,开发者可以更...

    springRestTemplate

    在 Spring Boot 中,由于其内置的自动配置特性,使用 RestTemplate 更加方便。让我们深入探讨一下 RestTemplate 的核心概念、功能以及如何在实际应用中进行设置和使用。 1. **什么是 RestTemplate?** RestTemplate...

    spring rest mvc使用RestTemplate调用

    在Spring应用中,可以通过`RestTemplate`的默认构造函数来实例化,或者在配置类中通过@Bean注解声明一个实例,以便进行依赖注入。例如: ```java @Bean public RestTemplate restTemplate() { return new ...

    spring-android-rest-template-1.0.1.RELEASE.jar.zip

    Spring Android REST Template是Spring为Android定制的一个轻量级库,它基于Spring的RestTemplate,为Android开发者提供了一种简单、灵活的方式来与RESTful服务进行交互。通过该库,我们可以方便地发送HTTP请求,...

    validate+@Constraint自定义注解1

    在Spring Boot应用中,我们经常需要对输入的数据进行验证,以确保数据的正确性和安全性。...在Spring Boot中,这样的注解可以应用于表单提交、REST API参数等多种场景,大大增强了应用的安全性和用户体验。

    spring+mybatis+rest全注解demo

    【标题】"Spring+Mybatis+REST全注解Demo"是一个综合性的开发示例,它展示了如何使用Spring框架、Mybatis持久层框架以及RESTful API设计原则,通过注解方式来构建一个完整的Java应用程序。这个Demo旨在帮助开发者...

    spring android sample 例子

    1. **Spring for Android**:Spring框架并非专门为Android设计,但Spring for Android项目允许开发者在Android应用中利用Spring的核心特性,如依赖注入(Dependency Injection)、数据访问抽象和REST客户端支持。...

    androidannotations框架举例

    AndroidAnnotations(简称AA)是一个强大的Java库,它简化了Android应用开发,通过注解处理技术自动处理了许多常见的任务,如视图注入、事件处理、生命周期管理等。在本例中,我们将深入探讨如何使用...

    rest+spring+hibernate

    "rest+spring+hibernate"这个主题结合了这三个关键技术,主要探讨如何在Spring框架中实现RESTful API,并利用Hibernate进行数据访问。 1. **RESTful API设计**:REST原则强调资源的表述和状态转移,通过HTTP动词...

    S2SH+rest注解配置实例

    在这个"**S2SH+rest注解配置实例**"中,我们主要关注的是Spring、Struts2(S2)、Hibernate(H)这三大框架的整合,以及RESTful服务的添加和全注解配置。下面将详细介绍这些知识点。 首先,**S2SH**是Java Web开发...

    spring-data-rest-angular例子

    这个项目旨在演示如何利用Spring Data REST将后端数据服务暴露为RESTful API,以便Angular前端能够方便地进行数据交互。下面我们将深入探讨该项目中的关键技术和知识点。 1. **Spring Boot**: Spring Boot是Spring...

    Spring+Android框架

    Spring for Android是Spring框架的一个扩展,旨在帮助开发者在Android平台上利用Spring的优势。这个项目的主要目标是提供一套工具集,使得Android开发者可以轻松地整合Spring的特性,如网络访问、数据存储以及安全性...

    Spring Android Reference Manual

    该模块不仅支持使用Spring的RestTemplate作为REST客户端,还提供了与Spring Social功能的集成,包括基于OAuth的身份验证和授权机制,使得开发者能够轻松地将社交网络服务集成到Android应用中。 二、Spring Android ...

    Spring3.0实现REST实例

    **Spring 3.0 实现 REST 实例** ...总之,Spring 3.0通过丰富的注解和强大的功能,极大地简化了REST服务的开发。开发者只需关注业务逻辑,无需过多关注底层的HTTP通信细节,从而提高了开发效率和代码质量。

    在本机Android应用程序中支持Spring的RestTemplate-Android开发

    适用于Android的Spring适用于Android的Spring是旨在提供用于本机Android应用程序的Spring Framework系列项目组件的库。 行为准则该项目遵循适用于Android的Spring,适用于Android的Spring是一个旨在提供用于本地...

    Spring-android jar包及doc

    Spring-android 是一个专门为Android平台设计的轻量级框架,它将Spring框架的优秀特性引入到移动开发中,帮助开发者更高效、更灵活地构建Android应用。这个资源包含的"spring-android-1.0.0.RELEASE"是Spring-...

    Building a Rest API with Spring

    本文主要介绍了使用Spring框架构建REST API的全过程,内容包括了从基础的Spring Web应用搭建,到使用Java配置,再到通过Spring Security进行安全认证和授权,以及REST API的其他重要特性,例如:使用HTTP消息转换器...

    用spring构建android互联网应用

    首先,`libs.zip`可能包含了Spring for Android所需的库文件,这些库如Spring Android Core、Spring Android REST Template等,是构建Android应用与服务器端交互的基础。Spring Android Core提供了一些基本服务,如...

    spring-android-core-1.0.0.RELEASE-sources.jar

    总结起来,"spring-android-core-1.0.0.RELEASE-sources.jar"是Spring for Android框架的基础,包含了DI、REST客户端、OAuth、EventBus等关键功能的实现。深入研究这个源码包,不仅可以提升开发者对Spring框架的理解...

Global site tag (gtag.js) - Google Analytics