實驗操作
1. 使用eclipse創建JDBC程序
(1)點擊eclipse圖標打開eclipse。
(2)打開eclipse后,點擊Open Perspective:
(3)在彈出窗口中選中"Java",并點擊"OK"
(4)右鍵點擊程序主界面左側空白處,在右鍵菜單中選擇"Import"
(5)在彈出窗口中依次點擊選擇“General”,“Existing Projects into Workspace”,接著點擊“Next”
(6)此時在彈出窗口右上角點擊“Browse...”
(7)在彈出窗口中點擊Hive文件夾,再點擊“OK”
(8)此時點擊“finish”即可進入程序主界面
(9)在程序主界面左側Package Explorer中,右鍵名為"Hive"的項目,在右鍵菜單選擇"New"中的"Package"選項
(10)在彈出窗口中輸入包的名稱"hive"后,點擊"Finish"
(11)接下來創建類,我們將要創建9個不同的類來完成本次實驗。右鍵名為"hive"的包,在右鍵菜單中選擇"New"選項中的"Class"
(12)在彈出窗口中輸入類的名稱(注意:此處的類名務必輸入第一個程序的類名"HiveCreateDb"),最后點擊"Finish"即可退回主界面
此時就可以編寫JDBC程序了
(13)在此界面編寫程序
整個實驗我們需要在hive新建9個類,分別是
HiveCreateDb
HiveCreateTable
HiveLoadData
HiveAlterRenameTo
HiveDropTable
HiveDropDb
HiveQLWhere
HiveQLGroupBy
HiveQLOrderBy
2. 使用eclipse編寫JDBC程序
(1)創建數據庫
①在這個HiveCreateDb類中編寫代碼實現創建數據庫的功能,核心代碼如下:
在代碼編寫完成之后,可以右鍵代碼編輯區任意位置,選擇"Run As"中的"Java Application"來運行代碼。
②當代碼執行成功后,主界面下方的控制臺會打印出代碼輸出語句中的“Database userdb created successfully.”。另外可以點擊控制臺右上角的最大化按鈕,能夠更直觀的看到相關的信息。
③下圖為最大化的控制臺輸出的信息。
④此時,我們點擊虛擬機1進入master節點,輸入hive命令進入HIveQL,通過查詢數據庫的命令可以檢查到該數據庫已創建成功。
show databases;
⑤ 注意,這里提供一種完整代碼的拷貝方法,當不能根據核心代碼的提示做出該程序時可以使用代碼拷貝,來運行該程序。
點擊選擇左邊任務欄中“終端”的圖標即可打開“終端”命令行程序
切換到root用戶下:
su
然后輸入密碼(密碼不可見):123456
將完整代碼導入eclipse:
cp /opt/code/HiveCreateDb.java /home/ubuntu/workspace/Hive/src/hive/HiveCreateDb.java
單擊代碼編輯區任意位置,即可刷新并呈現完整代碼
(2)創建表
重復創建類的步驟【第一部分中的第(11)-(13)部】創建一個HiveCreateTable類
① 在這個HiveCreateTable類中編寫代碼實現創建表的功能,核心代碼如下:
② 在代碼編寫完成之后,可以右鍵代碼編輯區任意位置,選擇"Run As"中的"Java Application"來運行代碼。
當代碼執行成功后,控制臺會打印出代碼輸出語句中的“Table employee created.”。下圖為最大化的控制臺輸出的信息。
③ 此時,我們點擊虛擬機1進入master節點,使用userdb數據庫,然后通過查詢表的命令可以檢查到該表已創建成功。
use userdb;
show tables;
④ 同樣的,這里也提供一種完整代碼的拷貝方法,當不能根據核心代碼的提示做出該程序時可以使用代碼拷貝,來運行該程序。
將完整代碼導入eclipse:
cp /opt/code/HiveCreateTable.java /home/ubuntu/workspace/Hive/src/hive/HiveCreateTable.java
單擊代碼編輯區任意位置,即可刷新并呈現完整代碼
(3)加載數據
重復創建類的步驟【第一部分中的第(11)-(13)部】創建一個HiveAlterRenameTo類
① 在這個類中編寫代碼實現加載的功能,核心代碼如下:
② 在代碼編寫完成之后,可以右鍵代碼編輯區任意位置,選擇"Run As"中的"Java Application"來運行代碼。
當代碼執行成功后,控制臺會打印出代碼輸出語句中的“Data loaded successfully.”。下圖為最大化的控制臺輸出的信息。
③ 此時,我們點擊虛擬機1進入master節點,然后通過查詢命令可以檢查到該數據已導入成功。
select * from employee;
④ 同樣的,這里也提供一種完整代碼的拷貝方法,當不能根據核心代碼的提示做出該程序時可以使用代碼拷貝,來運行該程序。
將完整代碼導入eclipse:
cp /opt/code/HiveLoadData.java /home/ubuntu/workspace/Hive/src/hive/HiveLoadData.java
單擊代碼編輯區任意位置,即可刷新并呈現完整代碼
(4)表的重命名
重復創建類的步驟【第一部分中的第(11)-(13)部】創建一個HiveAlterRenameTo類
① 在這個HiveAlterRenameTo類中編寫代碼實現表的重命名的功能,核心代碼如下:
② 在代碼編寫完成之后,可以右鍵代碼編輯區任意位置,選擇"Run As"中的"Java Application"來運行代碼。
當代碼執行成功后,控制臺會打印出代碼輸出語句中的“Table Renamed successfully”。下圖為最大化的控制臺輸出的信息。
③ 此時,我們點擊虛擬機1進入master節點,然后通過查詢命令可以檢查到該表已被重新命名。
show tables;
④ 同樣的,這里也提供一種完整代碼的拷貝方法,當不能根據核心代碼的提示做出該程序時可以使用代碼拷貝,來運行該程序。
將完整代碼導入eclipse:
cp /opt/code/HiveAlterRenameTo.java /home/ubuntu/workspace/Hive/src/hive/HiveAlterRenameTo.java
單擊代碼編輯區任意位置,即可刷新并呈現完整代碼
(5)刪除表
重復創建類的步驟【第一部分中的第(11)-(13)部】創建一個HiveDropTable類
① 在這個類中編寫代碼實現刪除表的功能,核心代碼如下:
② 在代碼編寫完成之后,可以右鍵代碼編輯區任意位置,選擇"Run As"中的"Java Application"來運行代碼。
當代碼執行成功后,控制臺會打印出代碼輸出語句中的“Drop Table emp successfully”。下圖為最大化的控制臺輸出的信息。
③ 此時,我們點擊虛擬機1進入master節點,然后通過查詢命令可以檢查到該表已被刪除。
show tables;
④ 同樣的,這里也提供一種完整代碼的拷貝方法,當不能根據核心代碼的提示做出該程序時可以使用代碼拷貝,來運行該程序。
將完整代碼導入eclipse:
cp /opt/code/HiveDropTable.java /home/ubuntu/workspace/Hive/src/hive/HiveDropTable.java
單擊代碼編輯區任意位置,即可刷新并呈現完整代碼
(6)刪除數據庫
重復創建類的步驟【第一部分中的第(11)-(13)部】創建一個HiveDropDb類
① 在這個HiveDropDb類中編寫代碼實現刪除數據庫的功能,核心代碼如下:
② 在代碼編寫完成之后,可以右鍵代碼編輯區任意位置,選擇"Run As"中的"Java Application"來運行代碼。
當代碼執行成功后,控制臺會打印出代碼輸出語句中的“Drop database userdb”。下圖為最大化的控制臺輸出的信息。
③ 此時,我們點擊虛擬機1進入master節點,然后通過查詢命令可以檢查到該數據庫已被刪除。
show databases;
④ 同樣的,這里也提供一種完整代碼的拷貝方法,當不能根據核心代碼的提示做出該程序時可以使用代碼拷貝,來運行該程序。
將完整代碼導入eclipse:
cp /opt/code/HiveDropDb.java /home/ubuntu/workspace/Hive/src/hive/HiveDropDb.java
單擊代碼編輯區任意位置,即可刷新并呈現完整代碼
(7)SELECT...WHERE語句的使用
查看薪資超過30000的員工:
重復創建類的步驟【第一部分中的第(11)-(13)部】創建一個HiveQLWhere類
① 在這個HiveQLWhere類中編寫代碼實現查詢的功能,
核心代碼如下:
② 在代碼編寫完成之后,可以右鍵代碼編輯區任意位置,選擇"Run As"中的"Java Application"來運行代碼。
當代碼執行成功后,控制臺會打印出篩選出來的結果。下圖為最大化的控制臺輸出的信息。
③ 同樣的,這里也提供一種完整代碼的拷貝方法,當不能根據核心代碼的提示做出該程序時可以使用代碼拷貝,來運行該程序。
將完整代碼導入eclipse:
cp /opt/code/HiveQLGroupBy.java /home/ubuntu/workspace/Hive/src/hive/HiveQLGroupBy.java
單擊代碼編輯區任意位置,即可刷新并呈現完整代碼
(8)Group by語句的使用
查詢獲取每個部門的員工人數:
重復創建類的步驟【第一部分中的第(11)-(13)部】創建一個HiveQLGroupBy類
① 在這個HiveQLGroupBy類中編寫代碼實現查詢的功能,核心代碼如下:
② 在代碼編寫完成之后,可以右鍵代碼編輯區任意位置,選擇"Run As"中的"Java Application"來運行代碼。
當代碼執行成功后,控制臺會打印出篩選出來的結果。下圖為最大化的控制臺輸出的信息。
③ 同樣的,這里也提供一種完整代碼的拷貝方法,當不能根據核心代碼的提示做出該程序時可以使用代碼拷貝,來運行該程序。
將完整代碼導入eclipse:
cp /opt/code/HiveQLGroupBy.java /home/ubuntu/workspace/Hive/src/hive/HiveQLGroupBy.java
單擊代碼編輯區任意位置,即可刷新并呈現完整代碼
(9)Order by語句的使用
重復創建類的步驟【第一部分中的第(11)-(13)部】創建一個HiveQLOrderBy類
獲取員工的詳細信息,并把結果按照部門名稱排序:
① 在這個類中編寫代碼實現查詢的功能,核心代碼如下:
② 在代碼編寫完成之后,可以右鍵代碼編輯區任意位置,選擇"Run As"中的"Java Application"來運行代碼。
當代碼執行成功后,控制臺會打印出篩選出來的結果。下圖為最大化的控制臺輸出的信息。
③ 同樣的,這里也提供一種完整代碼的拷貝方法,當不能根據核心代碼的提示做出該程序時可以使用代碼拷貝,來運行該程序。
將完整代碼導入eclipse:
cp /opt/code/HiveQLGroupBy.java /home/ubuntu/workspace/Hive/src/hive/HiveQLGroupBy.java
單擊代碼編輯區任意位置,即可刷新并呈現完整代碼