Sqoop 简明教程
Sqoop - Codegen
此章节介绍了“codegen”工具的重要性。从面向对象的应用程序的角度来看,每个数据库表都包含一个 DAO 类,该类包含“getter”和“setter”方法,以初始化对象。此工具 (-codegen) 自动生成 DAO 类。
它基于表架构结构以 Java 形式生成 DAO 类。在导入流程中会对 Java 定义进行实例化。此工具的主要用途是检查 Java 是否丢失了 Java 代码。如果是,它将使用字段之间的默认分隔符创建新版本的 Java。
Syntax
以下是 Sqoop codegen 命令的语法。
$ sqoop codegen (generic-args) (codegen-args)
$ sqoop-codegen (generic-args) (codegen-args)
Example
我们来看一个在 userdb 数据库中为 emp 表生成 Java 代码的示例。
以下命令用于执行给定示例。
$ sqoop codegen \
--connect jdbc:mysql://localhost/userdb \
--username root \
--table emp
如果命令执行成功,它将在终端上产生以下输出。
14/12/23 02:34:40 INFO sqoop.Sqoop: Running Sqoop version: 1.4.5
14/12/23 02:34:41 INFO tool.CodeGenTool: Beginning code generation
……………….
14/12/23 02:34:42 INFO orm.CompilationManager: HADOOP_MAPRED_HOME is /usr/local/hadoop
Note: /tmp/sqoop-hadoop/compile/9a300a1f94899df4a9b10f9935ed9f91/emp.java uses or
overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
14/12/23 02:34:47 INFO orm.CompilationManager: Writing jar file:
/tmp/sqoop-hadoop/compile/9a300a1f94899df4a9b10f9935ed9f91/emp.jar