通過java計算hash值
阿新 • • 發佈:2018-12-24
通過java計算hashcode
前段時間,在分享hive分桶原理的時候,需要解釋hive利用hashcode來將資料儲存到不同的桶中,為了方便演示,本打算連hive,直接操作hive表計算hash值,但是因為我沒有本地連線hive的許可權,所以就改連mysql,原理都差不多,重點是hashcode的計算。於是,我就在mysql上建了一張和hive表結構相同的表,直接操作該表。
計算hashcode的java程式碼如下:
package mysqlConnection;
import java.sql.*;
public class mysqlcon {
public static void main(String[] args) throws Exception {
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://IP:3306/test", "hive", "hive");
if(!conn.isClosed()) {
System.out.println("connection success!");
}
Statement stat = conn.createStatement ();
ResultSet res = stat.executeQuery("select * from test_hash");
while(res.next()) {
int idValue = res.getInt(1);
//System.out.println(node);
String field = res.getString("id");
int hashcode = field.hashCode();
System.out.println(idValue + "_hashcode:" + hashcode);
}
if(conn != null && !conn.isClosed()) {
res.close();
conn.close();
}
}
}