昨天接到一个任务,使用公司的ESB,调用别人的接口,把得到的数据存储到mysql数据库当中,这里简单记录解决思路,方便以后查看。

1.拿到一个网站的地址,使用火狐浏览器的firebug工具,查看其传递的参数、访问的接口以及获得的json格式数据。
 传递参数
time : [2016-05-03T08:00:00,2016-05-04T14:31:00]
 请求地址
http://www.qzsdj.gov.cn//xq/water?time=[2016-05-02T08:00:00,2016-05-04T14:31:00]
 json信息

 *id                "QZST004"                    //测站编号
time "2016-05-04T14:35:00" //查询最后定义时间时间
val 398.13 //最新水位
water_potential "6" //水势(涨、平、落)
capacity 3174.24 //库容(百万m³)
*name "东固" //测站站名
*lng 118.31 //x坐标
*lat 25.7577 //y坐标
*type "RR"
*type_name "水库水文站"
*address "泉州市德化县水口镇" //所在地址
*area_id "350526" //身份证前缀
*area_name "德化县" //所在地区
flood_val 409 //汛限/警戒
ensure_val 410 //正常/保证
is_over false
*river_name "涌溪" //河流名称
*water_system "闽江中下游"
town_code "350526106" //行政编码
town_name "水口镇" //乡镇名称 *为一定不为null
2. 使用Java服务生成所需要的参数
 // 设置参数time的值
long curtime = System.currentTimeMillis();
Date date = new Date(curtime);
DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");//自定义时间格式
String a = df.format(date);
String time = "[2016-05-02T08:00:00," + a + "]";
List<Map<String, String>> list = new ArrayList<Map<String, String>>();
Map<String, String> map = new HashMap<String, String>();
map.put("time", time);
list.add(map);
// 节点输出消息
Message outMessage = new DefaultMessage();
// 节点输出消息数据
outMessage.setBody(list);
// 消息载体设置输出消息
exchange.setOutMessage(outMessage);
 传递参数
time : [2016-05-03T08:00:00,2016-05-04T14:31:00]
3.使用http调用去请求数据
4.把jason数据转换成数据库数据
5.把数据库数据存储到mysql当中

流程图如下:

ESB数据采集思路的更多相关文章

  1. ESB数据发布思路

    通过esb已经将数据采集进数据库,现在需要开放一个接口,接受请求参数,进而通过参数进行数据查询,返回一段json格式的数据. ▼流程图: 刚开始尝试了很多个版本,可能是esb开发工具还用不熟练的原因吧 ...

  2. 用户行为数据采集核心思维(APP、web数据采集/埋点)

    关于数据采集(也就是所谓的埋点),有很多中形式,或者说方法.所有的数据采集都时围绕一个核心的三个点来做区别的处理. 数据采集核心思维三个点: 1.对象: 要采集谁,一个页面.一个按钮,页面或者按钮,就 ...

  3. [体感游戏] 1、MPU6050数据采集传输与可视化

    最近在研究体感游戏,到目前为止实现了基于51单片机的MPU6050数据采集.利用蓝牙模块将数据传输到上位机,并利用C#自制串口数据高速采集软件,并且将数据通过自制的折线图绘制模块可视化地展示出来等功能 ...

  4. SOA 架构中的ESB是更好的应用于异构系统集成整合还是用于统一服务调用/基础服务实施

    一.讨论主题与观点 写一篇文章.发现一次自觉得有意思的SOA架构方面的讨论,源于昨天AgileEAS.NET SOA 平台群(113723486)里几个群友的一次关于ESB的一次讨论. 大家的讨论观点 ...

  5. 三十、【C#.Net开发框架】WCFHosting服务主机的利用WCF服务通讯和实现思路

    回<[开源]EFW框架系列文章索引>        EFW框架源代码下载V1.3:http://pan.baidu.com/s/1c0dADO0 EFW框架实例源代码下载:http://p ...

  6. ESB 企业服务总线

    整理的OSChina 第 38 期高手问答 —— ESB 企业服务总线,嘉宾为@肖俊_David . @肖俊_David 恒拓开源架构师,热衷于JAVA开发,有多年的企业级开发经验.曾参和设计和开发基 ...

  7. 智能路由——ESB

    SOA之我见 SOA已然是企业级开发的必定之路.有人会问:我们有了OOP,还须要SOA吗?好吧我承认,这个问题也困扰了我非常久.现现在我得出的结论是:OOP是OOP,SOA是SOA. OOP是指面向对 ...

  8. Shuttle ESB

    Shuttle ESB(六)——在项目中的应用 如果说你认真看了前面几篇关于ESB的介绍,我相信,在这一篇文章中,你将会找到很多共鸣. 尽管,市面上开源的ESB确实非常之多,像Java中的Mule E ...

  9. app专项测试自动化测试方法思路与实现

    秉着个人意愿打算把python+rf接口自动进行彻底结束再做些其它方面的输出~但事与愿违,但领导目前注重先把专项测试方面完成,借此,先暂停python+rf(主要是与Jenkins集成+导入DB+微信 ...

随机推荐

  1. Fork/Join框架之双端队列

    简介 ForkJoinPool管理着ForkJoinWorkerThread线程,ForkJoinWorkerThread线程内部有一个双端队列,这个双端队列主要由一个数组queue.数组下标queu ...

  2. EF 预热

    由于EF第一次加载比较慢,所以要对EF进行一次初始化的加载,类似第一次打开网页很慢,但第二次打开都很快了的原理一样:第一次把所有静态的图片和JS缓存到本地了:当第二次打开的时候都不需要再去下载这些东西 ...

  3. Maven项目报错:The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path

    刚刚新建完Maven项目,一般都会报这个错误,原因是没有默认添加需要的javax.servelet的jar包,所以打开pom.xml文件添加如下dependency即可: <dependency ...

  4. LeetCode45 Jump Game II

    题目: Given an array of non-negative integers, you are initially positioned at the first index of the ...

  5. (转)Android学习笔记③——常用快捷键

    常用快捷键 代码跳转 描述:跳转是为了方便代码位置的定位,存在两种跳转:在定义处可以跳转到调用处,在调用处可以跳转到定义处. 快捷键:Cmd + 鼠标单击 方法间跳转 描述:从一个类方法跳转到临近的一 ...

  6. iphone 手机屏幕和UIView和UIWindowde 的主要的区别

    在iPhone5之前的iphone1,2,3,3s,4,4s都是320x480 iPhone5和5s的屏幕是320x568 iphone6的屏幕是375x667 iPhone6Plus的414x736 ...

  7. iOS之block块

    Block块. 1.声明Block int (^myBlock)(int n) = ^(int num) 类型 (^名称)(需要传的参数)= ^(参数) 2 __block 变量 在block块中修改 ...

  8. JavaScript中的window.close在FireFox和Chrome上不能正常动作的解决方法

    JS中关闭窗口的方法window.close()在IE上能够正常动作,而在FireFox和Chrome上无法动作. (当时,在Chrome35.0上的时候还是可以的,Chrome36.0上就无法动作了 ...

  9. 移动端 viewport设置

    <meta name="viewport" content="" /> width [pixel_value | device-width] wid ...

  10. PHP trim()函数的一些用法

    string trim ( string $str [, string $charlist ] ) - 去除字符串首尾处的空白字符(或者其他字符) trim()函数当第二个参数为空时,默认去掉空格.制 ...