ITPub博客

首页 > 应用开发 > Java > JavaScript 转换步骤

JavaScript 转换步骤

原创 Java 作者:PDI 时间:2008-06-13 16:13:52 0 删除 编辑
Kettle 里的 JavaScript步骤 是一个非常重要的转换步骤,一般来说其他步骤搞不定的事情,都可以由它来解决。

JavaScript步骤里使用的脚本是 Mozilla 的 Rhino,Rhino 是一个很流行的脚本语言。正因为它的出色,所以被 JDK 1.6 收编了,换了一身行头变成 javax.script 包了。不过 Mozilla 还一直在开发Rhino ,最近的一个 Realease1.7 是 08年3月份发布的。Rhino 作为一种脚本语言要遵守脚本语言的标准,对 Rhino 或脚本语言不熟悉的朋友可以参考下面的几个连接

Rhino介绍
javaScript 介绍
javaScript 规范


我们来看看 Kettle 里的 JavaScript 步骤怎么使用。
[@more@]例子. 假设用户有一个Excel 文件,包括2列,格式如下:
地区名称 销售额
xx省xx市 xx万元


另外用户在数据库中有一个事实表和一个字典表

事实表结构:
地区代码 销售额
12345 xx万元

字典表结构:
地区代码 省名 市名
12345 xx省 xx市

用户想将 EXCEL 中的数据导入到事实表中。要完成这个工作,需要将Excel 中的地区名称列按照省、市拆分。这时就只能使用 javaScript 步骤了。拆分后,根据获得的省名和市名再使用 Kettle 里的“数据库查询”步骤就可以获得对应的地区代码,最后将构造好的数据插入到事实表中。
从上面分析看出,完成这个工作要4个步骤:

1. Excel 输入步骤
2. javaScript 步骤
3. 数据库查询步骤
4. 表输出步骤

我们主要看看 javaScript 步骤里的 java 脚本如何写

================================= begin ============

var str = 地区名称.getString();
var begin = str.indexOf('省');
var end = str.indexOf('市');
var pName = str.substr(begin,end);
var cName = str.subsgr(end+1,str.length);

================================= end ============

脚本里的 pName 和 cName 可以作为字段, 再通过 "数据库查询步骤" 去匹配字典表里的 省名 和 市名
来获得 地区代码。

整个设计过程并不复杂,在实际应用中一般还会有更多的要求。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/14366449/viewspace-1005642/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: Excel 输入步骤
下一篇: 表输入步骤
请登录后发表评论 登录
全部评论
  • 博文量
    41
  • 访问量
    356387