源数据:
1、Number类型,格式:0.00
2.Number类型,#,##0.###
3.Integer 精度:3
4.Integer 精度3 (没效果)格式0.00(有效果,但只是整数阶段后加了两个00而已)
5.Number,精度3,格式0.000(有效保留)
6.Number,精度4(没效果),格式0.000(有效保留)
7.Number,精度2(没效果),格式0.000(有效保留)
8.Number只设置了精度,没效果
在增加常量这个例子中:
Number类型,值为3.1415926,结果只保留了1位小数
BigNumber类型,值为3.1415926,结果还是3.1415926
BigNumber类型,值为3.1415926,结果还是3.1415926(格式0.000,精确:3,均没有效果)
综上,
查看源代码,可以发现kettle中的数据类型,跟java的对应数据类型如下:
case ValueMetaInterface.TYPE_STRING : parameterType = String.class; break;
case ValueMetaInterface.TYPE_NUMBER : parameterType = Double.class; break;
case ValueMetaInterface.TYPE_INTEGER : parameterType = Long.class; break;
case ValueMetaInterface.TYPE_DATE : parameterType = Date.class; break;
case ValueMetaInterface.TYPE_BIGNUMBER : parameterType = BigDecimal.class; break;
case ValueMetaInterface.TYPE_BOOLEAN : parameterType = Boolean.class; break;
case ValueMetaInterface.TYPE_BINARY : parameterType = byte[].class; break;
简单来说,就是:
STRING : String.class
NUMBER : Double.class
INTEGER : Long.class
DATE : Date.class
BIGNUMBER : BigDecimal.class
BOOLEAN : Boolean.class
BINARY : byte[].class
另外,在增加常量这个控件中,设置什么格式,精度都是没用的。设置的值是多少就是多少,比如3.1415926.