文档库 最新最全的文档下载
当前位置:文档库 › JAVA_WEBSERVICE基础入门例子

JAVA_WEBSERVICE基础入门例子

JAVA_WEBSERVICE基础入门例子
JAVA_WEBSERVICE基础入门例子

java单选题库-博学谷

一、单选题 属于以下哪种语言() A. 机器语言 B. 汇编语言 C. 高级语言 D. 以上都不对 答案:C 解析:Java是一门高级编程语言 考察点:第一章 Java开发入门 题目难度:★☆☆☆容易 2.下列目录中,哪一个是用来存放JDK核心源代码的 A. lib目录 B. src目录 C. jre目录 D. include目录 答案:B 解析:JDK核心源代码存放在src文件夹下 考察点:第一章 Java开发入门 题目难度:★☆☆☆容易 3.下面命令中,可以用来正确执行HelloWorld案例的是() A. java HelloWorld B. java C. javac HelloWorld D. javac

答案:A 解析:java命令负责运行编译后的.class文件,不需要文件后缀名。 考察点:第一章 Java开发入门 题目难度:★☆☆☆容易 4.下面关于配置path环境变量作用的说法中,正确的是() A. 在任意目录可以使用javac和java命令 B. 在任意目录下可以使用class文件 C. 在任意目录可以使用记事本 D. 在任意目录下可以使用扫雷游戏 答案:A 解析:path环境变量的作用是在任意目录下都可以使用javac和java命令。 考察点:第一章 Java开发入门 题目难度:★☆☆☆容易 5.下列选项中,可以正确配置classpath的命令是() A. set classpath =C:\Program Files\Java\ set classpath : C:\Program Files\Java\ classpath set =C:\Program Files\Java\ classpath set : C:\Program Files\Java\ 答案:A 解析:配置classpath的命令是set classpath=xxx,并且等于号两边不要有空格。 考察点:第一章 Java开发入门 题目难度:★☆☆☆容易 6.下面选项中,完全面向对象的编程语言是() A. C B. COBOL C. JAVA D. FORTRAN 答案:C

Datastage 安装后启动was失败

按照安装教程安装虚拟机版的datastage 8.7后,使用命令启动was失败 [plain]view plain copy https://www.wendangku.net/doc/f514217214.html,srvr:~ # /opt/IBM/WebSphere/AppServer/bin/startServer.sh server1 2.ADMU0116I: Tool information is being logged in file 3. /opt/IBM/WebSphere/AppServer/profiles/InfoSphere/logs/server1/sta rtServer.log 4.ADMU0128I: Starting tool with the InfoSphere profile 5.ADMU3100I: Reading configuration for server: server1 6.ADMU3200I: Server launched. Waiting for initialization status. 7.ADMU3011E: Server launched but failed initialization. startServer.log, 8. SystemOut.log(or job log in zOS) and other log files under 9. /opt/IBM/WebSphere/AppServer/profiles/InfoSphere/logs/server1 sho uld 10. contain failure information. 按照提示查看报错日志: [html]view plain copy https://www.wendangku.net/doc/f514217214.html,srvr:/opt/IBM/WebSphere/AppServer/profiles/InfoSphere/logs/server1 # tai l -100 SystemErr.log 2. at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 3. at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorI mpl.java:60) 4. at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodA ccessorImpl.java:37) 5. at https://www.wendangku.net/doc/f514217214.html,ng.reflect.Method.invoke(Method.java:611) 6. at https://www.wendangku.net/doc/f514217214.html,uncher.Main.invokeFramework(Main.java:340) 7. at https://www.wendangku.net/doc/f514217214.html,uncher.Main.basicRun(Main.java:282) 8. at https://www.wendangku.net/doc/f514217214.html,uncher.Main.run(Main.java:981) 9. at https://www.wendangku.net/doc/f514217214.html,unchEclipse(WSPreLauncher .java:340) 10. at com.ibm.wsspi.bootstrap.WSPreLauncher.main(WSPreLauncher.java:110 ) 11.Caused by: https://www.wendangku.net/doc/f514217214.html,.ascential.xmeta.repository.core.CoreRepositoryException: Error initializ ing persistence manager module 13. at com.ascential.xmeta.repository.core.impl.DefaultSandbox.(De faultSandbox.java:70) 14. at https://www.wendangku.net/doc/f514217214.html,ng.J9VMInternals.newInstanceImpl(Native Method)

Java基础知识笔试题及答案2

1.Java中提供了名为()的包装类来包装原始字符串类型。 A.Integer B.Char C.Double D.String 2.https://www.wendangku.net/doc/f514217214.html,ng包的()方法比较两个对象是否相等,相等返回true。 A.toString()B.equals()C.compare()D.以上所有选项都不正确3.使用()方法可以获得Calendar类的实例。 A.get()B.equals()C.getTime()D.getInstance() 4.下面的集合中,()不可以存储重复元素。 A.Set B.Collection C.Map D.List 5.关于Map和List,下面说法正确的是()。 A.Map继承List B.List中可以保存Map或List C.Map和List只能保存从数据库中取出的数据 D.Map的value可以是List或Map 6.给定如下Java代码,编译运行的结果是()。 Import java.util.*; public class Test { public static void main(String[] args) { LinkedList list=new LinkedList(); list.add(“A”); list.add(2,”B”); String s=(String)list.get(1); System.out.println(s); }

A.编译时发生错误B.运行时引发异常C.正确运行,输出:A D.正确运行,输出:B ###############################################################3 3.所有异常的父类是()。 A.Error B.Throwable C.RuntimeException D.Exception 4.下列()操作不会抛出异常。 A.除数为零B.用负数索引访问数组 C.打开不存在的文件D.以上都会抛出异常 5.能单独和finally语句一起使用的块是()。 A.try B.throws C.throw D.catch 6.在多重catch块中同时使用下列类时,()异常类应该最后列出。 A.Exception B.ArrayIndexOutOfBoundsException C.NumberFormatException D.ArithmeticException 7.执行下面的代码会引发()异常。 String str=null; String strTest=new String(str); A.InvalidArgumentException B.IllegalArgumentException C.NullPointerException D.ArithmeticException 8.这段代码的输出结果是()。 try{ System.out.print(“try,“); return; } catch(Exception e){ System.out.print(“catch,“); } finally { System.out.print(“finally”);

kettle应用实践(转)

kettle应用实践(转) 今天早上在网上看到了kettle发布了最新的版本,忽然想起最近其实做了不少工作应该是ETL工具的拿手好戏,赶紧下载下来看看,看是否能够在实际的工作中应用起来。 顺便讲一下,为啥看到kettle会两眼发光。 最近写了好几个小程序,用于从一个ftp去获取数据,然后转发至另一个ftp去,或者是从一个数据库获取数据然后保存至本地的数据库中,使用的是jdk中的Timer实现的定时调度,本来也没什么问题,连续运行几个月都不会出错。 可是最近网络不是太好,周期性抽风,ping包时,每5分钟大概 会丢7-8个包,从而导致程序也会假死,过一段时间后就不正常干活了,估计是因为用了数据库连接池的问题,要是每次发起数据库连接可能就不会有问题了,偷懒也不想改了,因为网络最终肯定是会修好的 :-) 但是想试试ETL工具,因为后面还有一些类似的东西要处理,不想写代码了,用别人的轮子感觉比较好,呵呵 首先下载了kettle的最新版,kettle3.1,解压后即可运行,一般的开发人员稍微摸索一下,看看例子简单的转换还是会做的,今天小试了一把,有几个注意点记下来。 1.使用资源库(repository)登录时,默认的用户名和密码是admin/admin 2.当job是存放在资源库(一般资源库都使用数据库)中时,使用 Kitchen.bat执行job时,需使用如下的命令行: Kitchen.bat /rep kettle /user admin /pass admin /job job名 3.当job没有存放在资源库而存放在文件系统时,使用Kitchen.bat执行 job时,需使用如下的命令行: Kitchen.bat /norep /file user-transfer-job.kjb 4.可以使用命令行执行job后,就可以使用windows或linux的任务调度来 定时执行任务了 在一开始使用命令行方式执行job时,总是报如下的错误,琢磨了好长时间总算整明白正确的方式了。 Unexpected error during transformation metadata load No repository defined!

Java基础笔试机试测试题(带答案)

Java基础考试题 班级:__________ 姓名:___________ 日期:_____________ 一、笔试(45题,每题2分) 1) 分析下面的Java程序段,编译运行后的输出结果是()。 public class Test { public static void changeString(StringBuffer sb) { sb.append("stringbuffer2"); } public static void main(String[] args) { StringBuffer sb = new StringBuffer("stringbuffer1"); changeString(sb); System.out.println("sb = " + sb.toString()); } } A. sb = stringbuffer2stringbuffer1 B. sb = stringbuffer1 C. sb = stringbuffer2 D. sb = stringbuffer1stringbuffer2 2) 在Java中,包有多种用途,但不包含()。 A. 将类组合成较小的单元,便于使用 B. 有助于避免命名冲突 C. 有助于提高运行效率 D. 允许在更广的范围内保护类、数据和方法 3) 在Java中,如果要在字符串类型s="java"中,得到字母'v' 出现的位置,选()语句。 A)s.matches('v'); B)s.charAt('v'); C)s.indexOf('v'); D)s.substring('v'); 4)下列代码运行后,变量c的值是()。 int a=15,b=10; double c=a/b; a) 1.5 b) 1.0 c) 1 d) 0 5)main方法如下所示,该程序的运行结果是()。 public static void main(String [] args){ int i=0; System.out.print(i++); } a) 输出0 b) 输出1 c) 编译错误d) 运行时出现异常

pentaho介绍

一、Pentaho 整体架构 cc 二、Client tools 1. Report Designer 报表创建工具。如果想创建复杂数据驱动的报表,这是合适工具。 2. Design Studio 这是基于eclipse的工具,你可以使用它来创建手工编辑的报表或分析视图xaction 文件,一般用来对在report designer中无法增加修改的报表进行修改。 3. Aggregation Designer 帮助改善Mondrian cube 性能的图形化工具。 4. Metadata Editor 用来添加定制的元数据层到已经存在的数据源。一般不需要,但是它对应业务用户在创建报表时解析数据库比较容易。 5. Pentaho Data Integration 这是kettle etl工具。 6. Schema Workbench 帮助你创建rolap的图形化工具。这是为分析准备数据的必须步骤。 三、Pentaho BI suit community editon安装 硬件要求: RAM:At least 2GB Hard drive space:At least 1GB Processor:Dual-core AMD64 or EM64T 软件要求: 需要JRE 1.5版本,1.4版本已经不再支持。 修改默认的端口8080,打开\biserver-ce\tomcat\conf目录下的server.xml文件,修改base-urlhttp://localhost:8080/pe ntaho中的端口号。否则administration-console中不能连接到bi server。 四、配置数据库连接 如果要是pentaho bi server能连接到关系数据库,需要将相应数据库driver的jar包拷贝到server/biserver-ce/tomcat/common/lib目录。 为了能在administration console中创建数据库连接并测试,需要将相应的数据库driver 的jar包拷贝到server/administration console/jdbc目录。下面是具体关系数据库连接设置说明。 1、连接oracle数据库。

JAVA基础面试题经典

JAVA基础面试题经典

第一阶段题库 基础知识部分: 1.JDK是什么?JRE是什么? a)答:JDK:java开发工具包。JRE:java运行时 环境。 2.什么是java的平台无关性? a)答:Java源文件被编译成字节码的形式,无论 在什么系统环境下,只要有java虚拟机就能运行这个字节码文件。也就是一处编写,处处运行。这就是java的跨平台性。 3.在一台电脑上配置java环境,path起什么作 用?如何配置? a)答:path的作用是在DOS环境下,能在任意 位置使用JDK目录中bin文件夹中的可执行程序,来编译执行java程序。 b)在环境变量中找到path变量,把bin文件夹 的绝对路径加上即可。 4.什么样的标识符是合法的? a)由字母、数字、_和$组成,长度不限。其中字 母能够是大写或小写的英文字母,数字为0到9。

b)标识符的第一个字符不能是数字。 c)标识符区分大小写。 d)标识符不能包含空格。 5.Java有几种基本数据类型? a)byte,short,int,long,char,boolean,float,double 6.什么是隐式类型转换?什么是显示类型转换? a)当将占位数少的类型赋值给占位数多的类型 时,Java自动使用隐式类型转换。 b)当把在级别高的变量的值赋给级别底变量时, 必须使用显示类型转换运算。 7.&&和&区别,||和|区别? a)&&和||是短路与,短路或,当左边的表示式能 判断当前结果,则不判断右边的表示式。 b)而& 和|则将两边的表示式都运算完毕后,再 算结果。 8.break,continue区别? a)break结束最近的一个循环,continue结束当 次循环,进入下次循环。 9.类的命名规则是什么? a)如果类名使用拉丁字母,那么名字的首写字母 使用大写字母。

etl教程

ETL本质 做数据仓库系统,ETL是关键的一环。说大了,ETL是数据整合解决方案,说小了,就是倒数据的工具。回忆一下工作这么些年来,处理数据迁移、转换的工作倒还真的不少。但是那些工作基本上是一次性工作或者很小数据量,使用access、DTS或是自己编个小程序搞定。可是在数据仓库系统中,ETL上升到了一定的理论高度,和原来小打小闹的工具使用不同了。究竟什么不同,从名字上就可以看到,人家已经将倒数据的过程分成3个步骤,E、T、L分别代表抽取、转换和装载。 其实ETL过程就是数据流动的过程,从不同的数据源流向不同的目标数据。但在数据仓库中,ETL 有几个特点,一是数据同步,它不是一次性倒完数据就拉到,它是经常性的活动,按照固定周期运行的,甚至现在还有人提出了实时ETL的概念。二是数据量,一般都是巨大的,值得你将数据流动的过程拆分成E、T和L。 现在有很多成熟的工具提供ETL功能,例如datastage、powermart等,且不说他们的好坏。从应用角度来说,ETL的过程其实不是非常复杂,这些工具给数据仓库工程带来和很大的便利性,特别是开发的便利和维护的便利。但另一方面,开发人员容易迷失在这些工具中。举个例子,VB是一种非常简单的语言并且也是非常易用的编程工具,上手特别快,但是真正VB的高手有多少?微软设计的产品通常有个原则是“将使用者当作傻瓜”,在这个原则下,微软的东西确实非常好用,但是对于开发者,如果你自己也将自己当作傻瓜,那就真的傻了。ETL工具也是一样,这些工具为我们提供图形化界面,让我们将主要的精力放在规则上,以期提高开发效率。从使用效果来说,确实使用这些工具能够非常快速地构建一个job来处理某个数据,不过从整体来看,并不见得他的整体效率会高多少。问题主要不是出在工具上,而是在设计、开发人员上。他们迷失在工具中,没有去探求ETL的本质。 可以说这些工具应用了这么长时间,在这么多项目、环境中应用,它必然有它成功之处,它必定体现了ETL的本质。如果我们不透过表面这些工具的简单使用去看它背后蕴涵的思想,最终我们作出来的东西也就是一个个独立的job,将他们整合起来仍然有巨大的工作量。大家都知道“理论与实践相结合”,如果在一个领域有所超越,必须要在理论水平上达到一定的高度 探求ETL本质之一 ETL的过程就是数据流动的过程,从不同异构数据源流向统一的目标数据。其间,数据的抽取、清洗、转换和装载形成串行或并行的过程。ETL的核心还是在于T这个过程,也就是转换,而抽取和装载一般可以作为转换的输入和输出,或者,它们作为一个单独的部件,其复杂度没有转换部件高。和OLTP系统中不同,那里充满这单条记录的insert、update和select等操作,ETL过程一般都是批量操作,例如它的装载多采用批量装载工具,一般都是DBMS系统自身附带的工具,例如Oracle SQLLoader和DB2的autoloader 等。 ETL本身有一些特点,在一些工具中都有体现,下面以datastage和powermart举例来说。 1、静态的ETL单元和动态的ETL单元实例;一次转换指明了某种格式的数据如何格式化成另一种格式的数据,对于数据源的物理形式在设计时可以不用指定,它可以在运行时,当这个ETL单元创建一个实例时才指定。对于静态和动态的ETL单元,Datastage没有严格区分,它的一个Job就是实现这个功能,在早期版本,一个Job同时不能运行两次,所以一个Job相当于一个实例,在后期版本,它支持multiple instances,而且还不是默认选项。Powermart中将这两个概念加以区分,静态的叫做Mapping,动态运行时叫做Session。 2、ETL元数据;元数据是描述数据的数据,他的含义非常广泛,这里仅指ETL的元数据。主要包括每次转换前后的数据结构和转换的规则。ETL元数据还包括形式参数的管理,形式参数的ETL单元定义的参数,相对还有实参,它是运行时指定的参数,实参不在元数据管理范围之内。

Java程序员认证考试题库

第一部分 基础知识练习 目标 本章对应于《学生指南》各章的内容分别提供了练习题集,包括: ●第一章Java入门 ●第二章数据类型和运算符 ●第三章流程控制与数组 ●第四章封装 ●第五章继承 ●第六章抽象类与接口 ●第七章多态 ●第八章异常 ●第九章多线程机制 ●第十章输入输出流 ●第十一章使用泛型和集合框架 ●第十二章基于Swing的图形用户界面(GUI)设计 ●第十三章Java事件驱动编程

第一章练习题(Java入门) (C)1.下列哪项不是JDK所包含的内容?(选一项)A.Java编程语言 B.工具及工具的API C.Java EE扩展API D.Java平台虚拟机 2.下列关于JDK、JRE和JVM的描述。哪项正确?A.JDK中包含了JRE,JVM中包含了JRE B.JRE中包含了JDK,JDK中包含了JVM C.JRE中包含了JDK,JVM中包含了JRE D.JDK中包含了JRE,JRE中包含了JVM 3.下列哪个工具可以编译java源文件? A.javac B.jdb C.javadoc D.junit 4.JDK工具javadoc的作用是哪项? A.生成Java文档 B.编译Java源文件 C.执行Java类文件 D.测试Java代码 5.以下哪些包是Java标准库中常用的包?(选三项)A.java.lang B.javax.servlet .http C.j ava. io D.java.sql

6.使用JDK工具生成的Java文档的文件格式是? A.XML格式 B.自定义格式 c.二进制格式 D.HTML格式 (AC)7.以下关于JVM的叙述,哪项正确?(选两项) A.JVM运行于操作系统之上,它依赖于操作系统 B.JVM运行于操作系统之上,它与操作系统无关 C.JVM支持Java程序运行,它能够直接运行Java字节码文件D.JVM支持Java程序运行,它能够直接运行Java源代码文件 8.以下关于支持Java运行平台的叙述,哪项错误? A.Java可在Solaris平台上运行 B.Java可在Windows平台上运行 C.Java语言与平台无关。Java程序的运行结果依赖于操作系统D.Java语言与平台无关。Java程序的运行结果与操作系统无关 (B)9.以下关于Applet和Java程序之间关系的叙述,哪项错误? A.-个Applet就是一段Java程序 B.Applet是一种特殊的Java程序,它需要运行在Web服务器上C.Applet是一种特殊的Java程序,它需要运行在Web浏览器上D.Applet是一种Java SE平台的应用程序 (AD)10.以下关于Java HotSpot的描述,哪两项错误?(选两项)A.Java HotSpot是一种热编译技术,在编译Java源程序时会被使用B.Java HotSpot是一种热编译技术,在运行Java代码时会被使用C.Java HotSpot是一种热编译技术,它只对程序的部分字节码进行优化D.Java HotSpot是一种热编译技术,它会对程序的全部字节码进行优化

主流BI产品对比

国际主流BI产品对比

厂商产品及简介 国际厂商(主要) MicroStrategy MSTR ,国际专业BI 产品,覆盖BI 全部领域 IBM DB2以及Cognos 、SPSS 、DataStage ,覆盖BI 全部领域Oracle BIEE 、Hyperion ,覆盖BI 全部领域,数据挖掘领域有待加强 Microsoft SQLServer ,覆盖BI 全部领域,适合中小型企业,性价比高 SAP BusinessObjects 、CrystalReports 主要是报表领域和数据集成领域 国际BI 市场主要厂商

BI 产品纷纷嫁入豪门: 2007年11月,IBM收购Cognos 2008年4月,Oracle收购Hyperion 2010年10月,SAP收购Business Objects BI 产品国际阵营谁是幸存者: 目前BI产品第一阵营的唯一幸存者只有MicroStrategy,超过20年的专业技术和市场积累,让这个在巨头环伺下的BI行业领军产品一直保持着一枝独秀的良好态势。

厂商名称目标客户群 MicroStrategy金融、电信、政府、石油、电力等高端行业的高端应用,尤 其适合于数据量大,用户分布广泛的行业应用特点 SAP/BO BO定位于SAP ERP的已有用户优先实施,其它则通过OEM或 各种集成商,价格较高,不适用于中小企业 IBM/Cognos通过OEM和集成商进军企业客户,公司本身则注重已有的金 融、电信、政务领域客户 Microsoft适用于中小企业,依靠合作伙伴 Oracle基于Oracle数据库庞大的客户群,注重大型用户,但内部产 品有竞争关系 国际主流BI产品基本都已被IT业界巨头并购,技术路线及商务策略缺乏独立性,除MicroStrategy之外都缺乏BI产品技术发展方向的独立规划。

JAVA入门练习50题(含答案)

题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? //这是一个菲波拉契数列问题 public class lianxi01 { public static void main(String[] args) { System.out.println("第1个月的兔子对数: 1"); System.out.println("第2个月的兔子对数: 1"); int f1 = 1, f2 = 1, f, M=24; for(int i=3; i<=M; i++) { f = f2; f2 = f1 + f2; f1 = f; System.out.println("第" + i +"个月的兔子对数: "+f2); } } } 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。 public class lianxi02 { public static void main(String[] args) { int count = 0; for(int i=101; i<200; i+=2) { boolean b = false; for(int j=2; j<=Math.sqrt(i); j++) { if(i % j == 0) { b = false; break; } else { b = true; } } if(b == true) {count ++;System.out.println(i );} } System.out.println( "素数个数是: " + count); } }

datastage入门教程

简介 DataStage 使用了Client-Server 架构,服务器端存储所有的项目和元数据,客户端DataStage Designer 为整个ETL 过程提供了一个图形化的开发环境,用所见即所得的方式设计数据的抽取清洗转换整合和加载的过程。Datastage 的可运行单元是Datastage Job ,用户在Designer 中对Datastage Job 的进行设计和开发。 Datastage 中的Job 分为Server Job, Parallel Job 和Mainframe Job ,其中 Mainframe Job 专供大型机上用,常用到的Job 为Server Job 和Parallel Job 。 本文将介绍如何使用Server Job 和Parallel Job 进行ETL 开发。 Server Job 一个Job 就是一个Datastage 的可运行单元。Server Job 是最简单常用的Job 类型,它使用拖拽的方式将基本的设计单元-Stage 拖拽到工作区中,并通过连线的方式代表数据的流向。通过Server Job,可以实现以下功能。 1.定义数据如何抽取 2.定义数据流程 3.定义数据的集合 4.定义数据的转换 5.定义数据的约束条件 6.定义数据的聚载 7.定义数据的写入 Parallel Job Server Job 简单而强大,适合快速开发ETL 流程。Parallel Job 与Server Job 的不同点在于其提供了并行机制,在支持多节点的情况下可以迅速提高数据处理效率。Parallel Job 中包含更多的Stage 并用于不同的需求,每种Stage 使用上的限制也往往大于Server Job。 Sequence Job Sequence Job 用于Job 之间的协同控制,使用图形化的方式来将多个Job 汇集在一起,并指定了Job 之间的执行顺序,逻辑关系和出错处理等。 数据源的连接 DataStage 能够直接连接非常多的数据源,应用范围非常大,可连接的数据源包括: ?文本文件 ?XML 文件

Kettle命令行使用说明

Kettle命令行使用说明 1.KETTLE简介 说到ETL开源项目,Kettle当属翘首,项目名称很有意思,水壶。按项目负责人Matt 的说法:把各种数据放到一个壶里,然后呢,以一种你希望的格式流出。呵呵,外国人都很有联想力。 看了提供的文档,然后对发布程序的简单试用后,可以很清楚得看到Kettle的四大块: 1)Chef——工作(job)设计工具(GUI方式) 2)Kitchen——工作(job)执行器(命令行方式) 3)Spoon——转换(transform)设计工具(GUI方式) 4)Span——转换(trasform)执行器(命令行方式) 1.1.Chef——工作(job)设计器 这是一个GUI工具,操作方式主要通过拖拖拉拉,勿庸多言,一看就会。 何谓工作?多个作业项,按特定的工作流串联起来,开成一项工作。正如:我的工作是软件开发。我的作业项是:设计、编码、测试!先设计,如果成功,则编码,否则继续设计,编码完成则开始设计,周而复始,作业完成。 1.1.1.Chef中的作业项包括: 1)转换:指定更细的转换任务,通过Spoon生成。通过Field来输入参数; 2)SQL:sql语句执行; 3)FTP:下载ftp文件; 4)邮件:发送邮件; 5)检查表是否存在; 6)检查文件是否存在; 7)执行shell脚本:如dos命令。 8)批处理:(注意:windows批处理不能有输出到控制台)。

9)Job包:作为嵌套作业使用。 10)JavaScript执行:这个比较有意思,我看了一下源码,如果你有自已的Script引擎, 可以很方便的替换成自定义Script,来扩充其功能; 11)SFTP:安全的Ftp协议传输; 12)HTTP方式的上/下传。 1.1. 2.工作流 如上文所述,工作流是作业项的连接方式。分为三种:无条件,成功,失败,为了方便工作流使用,KETTLE提供了几个辅助结点单元(也可将其作为简单的作业项):Start单元:任务必须由此开始。设计作业时,以此为起点。 OK单元:可以编制做为中间任务单元,且进行脚本编制,用来控制流程。 ERROR单元:用途同上。 DUMMY单元:什么都不做,主要是用来支持多分支的情况,文档中有例子。 1.1.3.存储方式 支持XML存储,或存储到指定数据库中。 一些默认的配置(如数据库存储位置……),在系统的用户目录下,单独建立了一个.Kettle 目录,用来保存用户的这些设置。 1.1.4.LogView 可查看执行日志。 1.2.Kitchen——作业执行器 是一个作业执行引擎,用来执行作业。这是一个命令行执行工具,没啥可讲的,就把它的参数说明列一下。 1)-rep:Repositoryname任务包所在存储名 2)-user:Repositoryusername执行人 3)-pass:Repositorypassword执行人密码

Java基础笔试题(一)

Java阶段测试笔试题 一、选择题(每题5分) 1.Java程序的源文件扩展名为() A..doc B..txt C..java D..html 2.java程序中,main方法的格式正确是() A.static void main(String[] args) B.public void main(String[] args) C.public static main(String[] args) D.public static void main(String[] args) 3.在java中,下面()命令能够将java源文件编译为类文件 A.java B.javaw C.javac D.jar 4.给定java代码,进行编译运行,结果是() String s; System.out.print(“s=” + s); A.编译错误

B.编译通过,但是运行时出现错误 C.正常输出,输出s = null D.正常输出,输出s = 5.在java中,下列()是合法的变量名【选两项】 A._myString B.$a+b C.myString D.9myString 6.在java中,下列代码运行后的输出结果是() int x = 5 * 3; int y = x + 5 / x + 3; System.out.print(y); A.18 B.21 C.19 D. 4 7.从键盘输入值,第一步所做的是导入包,以下导入包的语句正确 的是()【选两项】 A.import java.util.*; B.import java.until.*; C.import java.util.Scanner; D.import java.until.Scanner;

ETL工具kettl应用说明

Kettle工具在实际中的应用说明 一:资源库的设置 Kettle提供了两种资源库的选择方式:数据库存放、本地文件存放。 数据库 该方式是通过数据库连接直接在数据库里面创建kettle表,表里面记录着你所做的任何保存过的记录以及转换和任务。此方法是远程存放的方式,具有可多人共享一个资源库的优势,但是也存在资源库不稳定的缺点。 以下就数据库资源库具体怎么实现做一下介绍: 第一: 在tools选项下面有 在资源库选项里面有连接资源库选项,点击之后会出现如下界面:

刚开始的时候是没用任何连接的,需要根据自己的需要选择创建。 笔:修改资源库连接 加:添加新的资源库 叉:删除选中资源库 点那个加号图标就可以进入到新建选项页面: 在中间的显示栏中:第一行代表着写入到数据库的资源库、第二行代表着保存到本地的资源库。 点击第一行进入如下界面:

点击新建按钮将会新建数据库连接,如果已经有你需要的数据库连接也可以选择你需要的。 上面就是新建数据库页面,根据你的需要选择具体的数据库连接方式,填写好完成之后点击一下测试按钮,就可以知道数据库连接是否成功。 到这里,资源库的连接已经做了一半了。接下来介绍另一半要做的事情。

回到这个页面,填写唯一的ID、名称,然后点击创建或更新按钮,之后会出现一些SQL语句,执行这些语句,如果成功的话就创建成功了,如果失败则要检查一下数据库。最后点击确定按钮就成功了。 这个时候就可以连接资源库了。 选择你创建的资源库,admin用户的默认密码是admin ,点击OK就行了。

本地 接下来简单介绍一下本地资源库,其实是很简单的。 选择第二行。将会看到如下页面: 这个就是本地的页面,比数据库简单多了,选择一下存放路径,给它一个ID号和名称,点击OK就可以了。 资源库建好之后就会进入到主页面了: 这个就是主页面了,表面上是空空如也的。 关于资源库的设置就就讲到这里了,关于更多的介绍请参照官方说明文档!

datastage入门培训

一、工具入门 DataStage是一个ETL的工具,就是对数据的抽取,转换,加载。个人通俗的理解就是一个对数据进行处理,提取的工具,这里面的数据大部分是以数据库中表的格式存在着的,所以如果要使用这个工具,首先必须对关系数据库的一些基本概念要有所了解,比如最基本的字段,键,记录等概念。 DataStage是通过设计job来实现ETL的功能的。 Job的设计跟普通的IDE设计一样,通过拖拽控件,并填加脚本来完成。这里的控件称为stage,每一个不同的stage都有不同的数据处理的功能,将各个stage通过一定的方式组合起来,设计成job,对job进行编译,运行,就能够实现对数据抽取转换加载。 1,安装datastage,看学习指导,先对该工具有个大概的认识,大概知道administrator,design,director,manager的区别。 了解datastage工具的主要用途:简单的说就是把一批数据input进来,经过各种各样的转化,清洗,然后在output出去,整个就是ETL 的过程。 对4个工具我们最常做的操作有: Administrator:1、对Project的管理,主要是建立和删除project; 2、对Licensing的管理,主要是更换Licensing。 design:datastage的核心,所有的开发都在design里面完成,在这里可以编辑你的job,使用各种stage控件。 director:1、查看日志,当运行job结束时,无论job成功或者失败,我们都可以在director 里面查看日志,里面能反映我们job运行的状态,经常job出错我们都是先查看日志,然后分析原因,再到design里面修改。 2、director的另外一个很有用的功能是logout job,当服务器或者网络出问题时,正在编辑的job很有可能被锁定,这时你就算把design关了再重新登陆还是无法打开job,会提示job has been used, 这就需要到director里面把job logout,然后就可以使用了。manage:manage的最主要的功能是可以对design里面的资源进行导入导出,当我们要把开发的job从一台机器转移到另外一台机器时,就需要用到。 二、开始学习使用design,做一些简单的job,接触几个常用的stage。 做练习1的1-2至4-2的练习,练习中用到的Oracle组件全部用sequence file 代替, 1-2练习中会教你导入练习所要用到的表的结构,练习中要用到的数据文件放在数据及表定义目录下。(表定义可以通过manage工具导入,但是数据文件必须自己手工导入,所以开发前请先将数据及表定义目录下面的所有.txt的数据文件导到你所使用的datastage的开发环境上,导数据文件的方法可以使用ftp工具) 要设计job的关键,就在于能够熟悉每个不同的stage并且能够灵活运用。在文档和指导中有对每个控件的使用方法作了图文并茂的说明,但是教材语言的一个缺点就是太过形式化,所以有些概念不能够很好的理解。比如lookup这个stage我在看教材的时候就没有太了解。所以,我就结合自己,用自己的语言对一些比较常用的stage说一下自己的理解和一些需要注意的地方。 几个常用stage的经验总结: Sequential File Stage:这个控件实际上是指代主机上面的一个文件,在它的属性中可以选定文件的路径,目录。一般这些文件都是以类似数据库表的格式存在的。使用这个控

kettle公司内部培训手册

Kettle 培训手册 一、Etl 介绍 ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程),对于金融IT 来说,经常会遇到大数据量的处理,转换,迁移,所以了解并掌握一种etl工具的使用,必不可少。 Kettle是一款国外开源的etl工具,纯java编写,绿色无需安装,数据抽取高 效稳定。Kettle中有两种脚本文件,transformation和job,transformation完成针 对数据的基础转换,job则完成整个工作流的控制。 二、kettle 部署运行 将kettle2.5.1文件夹拷贝到本地路径,例如D 盘根目录。 双击运行kettle文件夹下的spoon.bat文件,出现kettle欢迎界面: 稍等几秒

选择没有资源库,打开kettle主界面 创建transformation,job

点击页面左上角的创建一个新的transformation,点击保存到本地路 径,例如保存到D:/etltest下,保存文件名为EtltestTrans,kettle默认transformation 文件保存后后缀名为ktr 点击页面左上角的创建一个新的job,点击保存到本地路径,例如保 存到D:/etltest下,保存文件名为EtltestJob,kettle默认job文件保存后后缀名为kjb 创建数据库连接 在transformation页面下,点击左边的【Main Tree】,双击【DB连接】,进行 数据库连接配置。 connection name自命名连接名称 Connection type选择需要连接的数据库 Method of access选择连接类型 Server host name写入数据库服务器的ip地址 Database name写入数据库名 Port number写入端口号 Username写入用户名 Password写入密码 例如如下配置:

相关文档