博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用Spring RestTemplate解析RESTful服务
阅读量:6174 次
发布时间:2019-06-21

本文共 1650 字,大约阅读时间需要 5 分钟。

    在上一篇“使用Spring MVC 4构建Restful服务”博文中,我们谈到了如何使用Spring MVC 4搭建RESTful服务,本文以上篇文章为基础,继续讲解如何解析Spring RESTful服务。上篇文章中,我们用了jacson包进行Java对象的序列化,本文仍然使用此包进行Java对象的反序列化。

构建RESTful服务

    1.我们继续在 FavRestfulController 类中,新增 buildRestUser() 方法,将FavUser对象序列化成JSON对象输出,代码如下:

@RequestMapping(value="buildRestUser") public FavUser buildRestUser(){  FavUser favUser = new FavUser();  favUser.setUserId("mm");  favUser.setUserName("美眉");  favUser.setUserAge(18);  favUser.setCreateDate(new Date());  return favUser; }

  2.启动favspringmvcrestful工程,使用Firefox的RESTClient插件进行测试,在URL中输入:8080/favspringmvcrestful/buildRestUser,输出如下图所示的结果,RESTful服务搭建完成。

    

 解析RESTful服务

    1. 新建“ConsumeRESTful” Java Project,在Build Path中导入工程所需的Jar。

  2. 导入FavUser.Java对象,注意:该对象中的日期类型应该与构建RESTful服务中的FavUser对象的日期类型一致,即对createDate的Getter方法进行格式化,否则在反序列化过程中会报错。

  3新建 ConsumeSpringRestful.java ,在Main()方法中,测试RESTful服务。

package com.favccxx.favsoft.main;import org.springframework.web.client.RestTemplate;import com.favccxx.favsoft.pojo.FavUser;public class ConsumeSpringRestful {	public static void main(String[] args) {		RestTemplate restTemplate = new RestTemplate();		FavUser favUser = restTemplate.getForObject("http://localhost:8080/favspringmvcrestful/buildRestUser", FavUser.class);        System.out.println("userId:    " + favUser.getUserId());        System.out.println("userName:    " + favUser.getUserName());        System.out.println("userAge:    " + favUser.getUserAge());        System.out.println("createDate:    " + favUser.getCreateDate());	}}

  4. 运行工程,输入内容如下,正说明解析RESTful服务成功。

  本例中采用的就是jacson框架解析JSON对象,当然也可以使用GSON,FastJSON,Jersey等框架进行解析,但通常的做法是反序列化JSON的工具类与序列化的工具类相同,防止因类型不匹配等原因而造成的数据映射错误。

转载地址:http://gjmba.baihongyu.com/

你可能感兴趣的文章
lvs负载均衡群集以及高可用性能
查看>>
Python中的循环退出举例及while循环举例
查看>>
家具定制跟踪管理系统,web开发工具【活字格】助企业一步跨入移动互联时代...
查看>>
linux 日志定时清理脚本
查看>>
java老司机面试题
查看>>
Guice AOP
查看>>
懒汉式单例
查看>>
java递归组装树形结构
查看>>
手把手教你自己写一个模糊搜索的下拉框
查看>>
.Net文档图像处理工具包GdPicture.NET发布v14.0.30,改进PDF/OCR生成速度
查看>>
NetBSD 8.1 RC1 发布
查看>>
Python黑魔法 --- 异步IO( asyncio) 协程
查看>>
[C++]一、关键字与数据结构
查看>>
12个必备的JavaScript装逼技巧
查看>>
域名备案图文教程
查看>>
iOS ScrollView上的view添加悬停效果
查看>>
Spring与MQ整合简单例子
查看>>
Apache-shiro学习
查看>>
React-Redux源码分析
查看>>
页面传递参数问题
查看>>