顺丰丰桥接口开发-java(下订单接口)
下订单接口,提交的数据如下:
<Request service = "OrderService" lang = "zh-CN" >
<Head>SLKJ2019</Head>
<Body><Order orderid="SFKD-20160219000019" j_company="深圳宝龙达信息技术股份有限公司" j_contact="邓丽君" j_tel="15323233432" j_mobile="15322234342" j_province="广东省" j_city="深圳市"j_county="南山区"j_address="广东省深圳市南山区西丽镇塘朗同富裕工业城7栋" d_contact="四海" d_tel="15023434543" d_mobile="15423456545" d_province="广东省" d_city="深圳市" d_county="南山区" d_address="科技园软件产业基地" express_type="1" pay_method="1" custid="7551234567" parcel_quantity="1" is_docall="0" sendstarttime="" remark="电子产品 笔记本+显卡"is_unified_waybill_no="1">
</Order>
</Body>
</Request>
下单表单页面类似下图:
接收到表单数据,需要转换成对应的xml数据提交,所以我们会根据xml结构构建对应的类,参考如下:
首先是最顶层的Request,主要看注解:
@XmlRootElement(name="Request")
public class SfRequest {private String service;private String lang = "zh-CN";private String head = SfUtils.clientCode;private SfRequestBody body;public SfRequest() {}public SfRequest(String service) {this.service = service;}@XmlAttributepublic String getService() {return service;}public void setService(String service) {this.service = service;}@XmlAttributepublic String getLang() {return lang;}public void setLang(String lang) {this.lang = lang;}@XmlElement(name="Head")public String getHead() {return head;}public void setHead(String head) {this.head = head;}@XmlElement(name="Body")public SfRequestBody getBody() {return body;}public void setBody(SfRequestBody body) {this.body = body;}
}
然后是Body:
@XmlRootElement(name="Body")
public class SfRequestBody {SfRequestOrder order;public SfRequestBody() {}@XmlElement(name = "Order") public SfRequestOrder getOrder() {return order;}public void setOrder(SfRequestOrder order) {this.order = order;}
}
然后就是Order,属性太多就不逐个列了,需要注意的是XmlAttribute和XmlElement的区别,对比xml一下就知道了:
@XmlRootElement(name="Order")
public class SfRequestOrder {……private SfRequestCargo cargo;public SfRequestOrder() {}@XmlAttribute(name="j_province")public String getJ_province() {return j_province;}public void setJ_province(String j_province) {this.j_province = j_province;}@XmlElement(name="Cargo")public SfRequestCargo getCargo() {return cargo;}public void setCargo(SfRequestCargo cargo) {this.cargo = cargo;}}
下面的就不再一一列了,这些类文件都写好之后,就可以将表单数据整合成请求的数据了,再通过上一篇的工具转成xml数据,以及使用上一篇的testRequest方法,稍微修改下,下单提交就完成了。
响应数据收到后,我们可以根据xml的数据结构,如上建立对应的类文件,将xml反转成类数据:
SfResponseVo responseVo = (SfResponseVo) SfUtils.xmlToBean(response, SfResponseVo.class);
那么下单的接口就完成了,是不是很简单?这种方式在写前面那些类文件时感觉比较繁琐,但是写完后,后面处理逻辑就非常清晰了。
顺丰丰桥接口开发-java(下订单接口)相关推荐
- 顺丰丰桥接口开发-java(订单取消接口)
订单取消接口,咨询了顺丰公司,下单后不取消也没什么问题,不过为了自己的业务系统的完整性,我们还是需要弄的.取消的xml没有那么复杂,偷懒就不搞java类了,直接替换相关数据提交,操作看之前的文章. & ...
- 亚马逊电商数据自动化管理接口平台JAVA SP-API接口开发(下)
亚马逊电商数据自动化管理接口平台JAVA SP-API接口开发(下) 重要说明 本文章为亚马逊系列其中的一篇,具体详见 主页 中亚马逊分类 该系列项目均为[CSDN轻夏]原创,未经允许禁止转载 如有疑 ...
- java微信接口开发java SpringMVC mybatis 后台框架
获取[下载地址] QQ: 313596790 [免费支持更新] 支持三大数据库 mysql oracle sqlsever 更专业.更强悍.适合不同用户群体 [ 新录针对本系统的视频教 ...
- 支付接口开发总结,支付宝接口、通联接口
主要知识点:会使用httpclient.理解回调和通知机制.理解session机制 支付宝开发主要就是三个接口:一个是下订单的接口. 这个接口中,先存储自己的订单业务逻辑. 然后根据自己支付宝注册成为 ...
- 公众号php支付接口开发,公众号支付接口的开发
这次给大家带来公众号支付接口的开发,公众号支付接口开发的注意事项有哪些,下面就是实战案例,一起来看一下. 公众号支付就是在微信里面的H5页面唤起微信支付,不用扫码即可付款的功能.做这个功能首先要明确的 ...
- python中restful接口开发实例_Python RESTful接口开发02
什么是RESTful RESTful是一种设计思想,一种风格. RESTful主要包括 资源 和 对资源的操作. 资源: 对实体的抽象,图书.音乐.电影.学生等都属于资源. 对资源的操作: ===== ...
- 顺丰丰桥java demo_顺丰丰桥接口开发-java(前篇)
因原系统jdk版本较低,所以没有使用丰桥提供的jar,纯手写完成,主要包括下单接口.取消接口.增加件数接口.路由接口等,难度不大,就是遇到问题很难找到客服,哈哈... 开发主要解决的无非是如何提交数据 ...
- 顺丰丰桥接口开发-java(工具类)
上一篇讲到我们用的是xml与bean之间的转换的方式来处理数据,那么就需要用到一些类库来解决,网上搜一下JAXBContext,就有很多相关的文章介绍(感谢大咖们的贡献),主要涉及两个方法如下: /* ...
- 顺丰丰桥接口开发-java(前篇)
因原系统jdk版本较低,所以没有使用丰桥提供的jar,纯手写完成,主要包括下单接口.取消接口.增加件数接口.路由接口等,难度不大,就是遇到问题很难找到客服,哈哈- 开发主要解决的无非是如何提交数据,以 ...
最新文章
- Active Directory边界
- easyui动态显示和隐藏表头
- 探索C/C++大数快(自然数)模板
- 美来临公司商业模式分析,公司是不昨的
- 泊松分布 二项分布 正态分布之间的联系,与绘制高斯分布图
- css3 border渐变实现
- 浅谈计算机教学论文,浅谈计算机教学(论文)
- python mysql插入数据报错:TypeError: %d format: a number is required, not str
- 04夯实基础之MySQL基础
- 维乐美学系列:美丽背后的匠心打造
- MySQL的下载与安装(超详细)
- 【英语词组】恋恋不忘Day 3-4
- 蓝汛之GPIO基本操作寄存器【篇】
- 期货破位(期货破位做单法)
- 台式计算机的CPU上安装有小风扇,台式电脑cpu风扇安装教程
- 带你读懂Java GC日志信息 教你如何使用工具查看【图文演示】
- windows微信如何双开
- 企业安全级世界杯,红芯助你捧得大力神杯
- Oracle自治数据库技术概要白皮书读书笔记
- Cpolar配合Everything快速搜索私有云资料