
- Sqoop 教程
- Sqoop - 首頁
- Sqoop - 簡介
- Sqoop - 安裝
- Sqoop - 匯入
- Sqoop - 匯入所有表
- Sqoop - 匯出
- Sqoop - Sqoop 作業
- Sqoop - 程式碼生成
- Sqoop - Eval
- Sqoop - 列出資料庫
- Sqoop - 列出表格
- Sqoop 有用資源
- Sqoop - 問題與解答
- Sqoop - 快速指南
- Sqoop - 有用資源
- Sqoop - 討論
Sqoop - 程式碼生成
本章介紹了“程式碼生成”工具的重要性。從面向物件應用程式的角度來看,每個資料庫表都有一個包含“getter”和“setter”方法以初始化物件的 DAO 類。此工具 (-codegen) 會自動生成 DAO 類。
根據表模式結構,它會生成 Java 中的 DAO 類。Java 定義例項化是匯入過程的一部分。此工具的主要用途是檢查 Java 是否丟失了 Java 程式碼。如果丟失,則會使用欄位之間的預設分隔符來建立新版本的 Java。
語法
以下是 Sqoop codegen 命令的語法。
$ sqoop codegen (generic-args) (codegen-args) $ sqoop-codegen (generic-args) (codegen-args)
示例
讓我們看一個示例,它為 userdb 資料庫中 emp 表生成 Java 程式碼。
以下命令用於執行給定的示例。
$ sqoop codegen \ --connect jdbc:mysql:///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
驗證
讓我們看看輸出。加粗的路徑是 emp 表的 Java 程式碼生成並存儲的位置。讓我們使用以下命令驗證該位置的檔案。
$ cd /tmp/sqoop-hadoop/compile/9a300a1f94899df4a9b10f9935ed9f91/ $ ls emp.class emp.jar emp.java
如果您想深入驗證,請比較 userdb 資料庫中的 emp 表和以下目錄中的 emp.java
/tmp/sqoop-hadoop/compile/9a300a1f94899df4a9b10f9935ed9f91/.
廣告