因github国内无法正常使用 本项目废弃,该项目被迁移至:https://gitee.com/ijson/in-rest-proxy, 感谢各位支持
- 封装restful请求,支持POST,GET,PUT,DELETE
- 支持json及xml数据格式
- 单一依赖,支持多个不同服务地址
- 支持配置中心依赖下载
Maven 地址
<dependency>
<groupId>com.ijson</groupId>
<artifactId>in-rest-proxy</artifactId>
<version>1.0.7</version>
</dependency>
案例列举以微信支付接口及淘宝接口进行介绍
- 根据接口定义自己的model,请求及返回参数定义
详见:Unifiedorder.java
其中:
@INField 注解主要校验当前字段是否为必填字段,可根据此字段生成接口文档
@XStreamAlias("xml") 定义xml最外层标签
@CDATA 如果是xml 则会自动添加 <![CDATA[" 开始,由 "]]> 标签
@Data 自动生成get和set方法,idea的话需要安装lombok插件
- 定义数据拼装解析类
详见:WeixinRestCodeC.java
主要是解决不同数据格式带来的问题,由开发者自定义
继承 AbstractRestCodeC.java
encodeArg为拼装数据结构
XmlUtil.toXml(T) 将对象转换成xml
decodeResult(int,map,byte,T) 解析返回的数据结构
XmlUtil.toBean(xml, T); 将xml转换成对象
validateResult 校验返回结果是否正确
- 定义接口地址资源
详见:WeixinResource.java
@RestResource 定义资源信息
其中
value : 配置文件中的Key
desc :描述信息
codec : 数据拼装解析类
contentType : 数据返回类型
@POST
value 地址 ,配置文件中的url 此路径为服务整体地址
desc 描述
@GET
value 地址 ,配置文件中的url 此路径为服务整体地址
desc 描述