package com.produban.openbus.console.hive; import java.io.InputStream; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Statement; import java.util.Properties; import org.apache.log4j.Logger; import org.springframework.stereotype.Component; @Component public class HiveConnector { private static Logger LOG = Logger.getLogger(HiveConnector.class); private Connection con = null; public HiveConnector() {} private Connection getConnection() throws Exception { try { Properties prop = new Properties(); ClassLoader loader = Thread.currentThread().getContextClassLoader(); InputStream resourceStream = loader.getResourceAsStream("META-INF/spring/environment.properties"); prop.load(resourceStream); Class.forName(prop.getProperty("hive.driver.name")); con = DriverManager.getConnection(prop.getProperty("hive.driver.url"), prop.getProperty("hive.driver.user"), prop.getProperty("hive.driver.password")); System.setProperty("HADOOP_USER_NAME", prop.getProperty("hive.driver.user")); } catch (Exception e) { e.printStackTrace(); throw e; } return con; } public void executeQuery(String query) throws Exception { Statement stmt = null; try { stmt = getConnection().createStatement(); LOG.info("Query " + query + " running...."); stmt.execute(query); LOG.info("Query done"); } catch (Exception e) { e.printStackTrace(); throw e; } finally { stmt.close(); con.close(); } } }