【Kettle】 kettle | spoon | http请求 | 解析json | 结果入库

一、说明

1、Kettle版本: pdi-ce-9.3.0.0-428

2、依赖jar: mysql-connector-java-5.1.49.jar

3、从http服务请求数据,并保存到表

4、数据库: MySQL8.0

5、jdk版本: 1.8.0_202

二、准备工作

1、下载kettle

1)云盘 https://pan.baidu.com/s/1Axv_XqFp_JfNHR0vZFCJcw 密码统一: 6326 说明1:pdi-ce-9.3.0.0-428.zip已经有了;如果没有的,可以自行下载mysql-connector-java-5.1.49.jar 说明2: kettle依赖jdk环境,自行安装配置吧 2)mysql-connector-java-5.1.49.jar https://pan.baidu.com/s/1YURbPTR-8UEMK495gh6AIA 说明1: mysql连接jar要放到: pdi-ce-9.3.0.0-428data-integrationlib 3)如何运行kettle(windows环境) pdi-ce-9.3.0.0-428data-integrationSpoon.bat ~~

2、 组件路径

1)生成记录 输入-生成记录 生成记录 ~~ 2)HTTP请求 查询-REST client REST client ~~ 3)JSON字符串解析 输入-JSON input JSON input 4)保存到数据表 输出-表输出 表输出 ~~

3、json数据抽离

json示例 { "code": 0, "data": { "level": "5", "list": [{ "name": "张三" }, { "name": "李四" } ] } } 1)解析对象 $.data.level 2)解析数组 $.data.list[*].name ~~

4、举个例子:将api接口数据保存入库

1)将组件拼接 2)配置生成记录 说明1: 修改限制 10 -> 1 说明2: 增加变量url,即请求的地址 ~~ 3)配置REST client 说明1: 勾选Accept URL from field,即从定义的变量里面获取url;并选择变量 说明2: 默认或修改Result field name,即接收http返回的json数据 4)配置JSON input a> 配置文件 说明1: 勾选“源定义在一个字段里”,并把变量名写上,即result;要跟REST client里的Result field name保持一致 b> 配置字段 说明1:json数据示例-对象 { "code": 0, "data": { "level": "5" } } 说明1:json数据示例-数组 { "code": 0, "data": { "list": [{ "name": "张三" }, { "name": "李四" } ] } } 5)配置表输出 a> 新增数据库连接信息 新增你的数据库信息 b> 配置映射 c> 执行表SQL或者自行创建表;表必须存在 6)配置完成 说明1: 6)之前配置过程,配置完成就可以测试了 说明2: 测试前提,http接口已经OK 说明3: 从7)开始,模拟测试,即API接口没有OK之前,验证脚本是否OK 7)将数据json示例保存到本地文件 { "code": 0, "data": { "level": "5", "list": [{ "name": "张三" }, { "name": "李四" } ] } } 8)修改JSON input配置 9)预览 10)7)~9)是对象示例;数组示例更换路径即可 不再赘述 ~~
经验分享 程序员 微信小程序 职场和发展