// Path: src/main/java/com/adintellig/ella/model/Server.java
// public class Server {
// 	private String host;
// 	private Timestamp updateTime;
// 
// 	public String getHost() {
// 		return host;
// 	}
// 
// 	public void setHost(String host) {
// 		this.host = host;
// 	}
// 
// 	public Timestamp getUpdateTime() {
// 		return updateTime;
// 	}
// 
// 	public void setUpdateTime(Timestamp updateTime) {
// 		this.updateTime = updateTime;
// 	}
// 
// 	@Override
// 	public int hashCode() {
// 		final int prime = 31;
// 		int result = 1;
// 		result = prime * result + ((host == null) ? 0 : host.hashCode());
// 		return result;
// 	}
// 
// 	@Override
// 	public boolean equals(Object obj) {
// 		if (this == obj)
// 			return true;
// 		if (obj == null)
// 			return false;
// 		if (getClass() != obj.getClass())
// 			return false;
// 		Server other = (Server) obj;
// 		if (host == null) {
// 			if (other.host != null)
// 				return false;
// 		} else if (!host.equals(other.host))
// 			return false;
// 		return true;
// 	}
// 
// }
// 
// Path: src/main/java/com/adintellig/ella/util/JdbcUtil.java
// public class JdbcUtil {
// 
// 	private static String db_driver;
// 	private static String db_url;
// 	private static String db_userName;
// 	private static String db_passWord;
// 
// 	static {
// 		ConfigProperties config = ConfigFactory.getInstance()
// 				.getConfigProperties(ConfigFactory.ELLA_CONFIG_PATH);
// 		db_driver = config.getProperty("mysql.db.driver");
// 		db_url = config.getProperty("mysql.db.url");
// 		db_userName = config.getProperty("mysql.db.user");
// 		db_passWord = config.getProperty("mysql.db.pwd");
// 	}
// 
// 	public static Connection getConnection() {
// 		Connection con = null;
// 		try {
// 			Class.forName(db_driver);
// 		} catch (ClassNotFoundException e) {
// 			System.out.println("3-ClassNotFoundException");
// 			e.printStackTrace();
// 			return null;
// 		}
// 		try {
// 			con = DriverManager.getConnection(db_url, db_userName, db_passWord);
// 		} catch (SQLException e) {
// 			System.out.println("4-SQLException");
// 			e.printStackTrace();
// 			return null;
// 		}
// 		return con;
// 	}
// 
// 	public static void close(Connection con, Statement stmt, ResultSet rs) {
// 		if (rs != null) {
// 			try {
// 				rs.close();
// 			} catch (SQLException e) {
// 				System.out.println("5--SQLException");
// 				e.printStackTrace();
// 			}
// 		}
// 		if (stmt != null) {
// 			try {
// 				stmt.close();
// 			} catch (SQLException e) {
// 				System.out.println("6-SQLException");
// 				e.printStackTrace();
// 			}
// 		}
// 		if (con != null) {
// 			try {
// 				con.close();
// 			} catch (SQLException e) {
// 				System.out.println("7-closeSQLException");
// 				e.printStackTrace();
// 			}
// 		}
// 	}
// 
// 	public static void close(Connection con, PreparedStatement pstmt,
// 			ResultSet rs) {
// 		if (rs != null) {
// 			try {
// 				rs.close();
// 			} catch (SQLException e) {
// 				System.out.println("8-SQLException");
// 				e.printStackTrace();
// 			}
// 		}
// 		if (pstmt != null) {
// 			try {
// 				pstmt.close();
// 			} catch (SQLException e) {
// 				System.out.println("9-SQLException");
// 				e.printStackTrace();
// 			}
// 		}
// 		if (con != null) {
// 			try {
// 				con.close();
// 			} catch (SQLException e) {
// 				System.out.println("10-closeSQLException");
// 				e.printStackTrace();
// 			}
// 		}
// 	}
// 
// 	public static void close(Connection con) {
// 		if (con != null) {
// 			try {
// 				con.close();
// 			} catch (SQLException e) {
// 				System.out.println("11-closeSQLException");
// 				e.printStackTrace();
// 			}
// 		}
// 	}
// 
// }


import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.adintellig.ella.model.Server;
import com.adintellig.ella.util.JdbcUtil;
				stmt.addBatch();
			}
			logger.info("[INSERT] Load Servers info into 'servers'. Size="
					+ beans.size());
		}
		stmt.executeBatch();
		JdbcUtil.close(con, stmt, null);
	}

	public boolean needUpdate(List<Server> beans) {
		if (null != beans && beans.size() > 0) {
			if (beans.size() != getTotalNumber())
				return true;
		}
		return false;
	}

	public void truncate() throws SQLException {
		Connection conn = JdbcUtil.getConnection();
		Statement stmt = conn.createStatement();
		stmt.executeUpdate("truncate table hbase.servers");
		JdbcUtil.close(conn,stmt,null);
	}

	public List<Server> list() throws Exception {
		Connection conn = JdbcUtil.getConnection();
		Statement stmt = conn.createStatement();
		ResultSet rs = stmt.executeQuery("select * from hbase.servers");
		List<Server> servers = new ArrayList<Server>();
		while (rs.next()) {
// Path: src/main/java/com/adintellig/ella/model/Server.java
// public class Server {
// 	private String host;
// 	private Timestamp updateTime;
// 
// 	public String getHost() {
// 		return host;
// 	}
// 
// 	public void setHost(String host) {
// 		this.host = host;
// 	}
// 
// 	public Timestamp getUpdateTime() {
// 		return updateTime;
// 	}
// 
// 	public void setUpdateTime(Timestamp updateTime) {
// 		this.updateTime = updateTime;
// 	}
// 
// 	@Override
// 	public int hashCode() {
// 		final int prime = 31;
// 		int result = 1;
// 		result = prime * result + ((host == null) ? 0 : host.hashCode());
// 		return result;
// 	}
// 
// 	@Override
// 	public boolean equals(Object obj) {
// 		if (this == obj)
// 			return true;
// 		if (obj == null)
// 			return false;
// 		if (getClass() != obj.getClass())
// 			return false;
// 		Server other = (Server) obj;
// 		if (host == null) {
// 			if (other.host != null)
// 				return false;
// 		} else if (!host.equals(other.host))
// 			return false;
// 		return true;
// 	}
// 
// }
// 
// Path: src/main/java/com/adintellig/ella/util/JdbcUtil.java
// public class JdbcUtil {
// 
// 	private static String db_driver;
// 	private static String db_url;
// 	private static String db_userName;
// 	private static String db_passWord;
// 
// 	static {
// 		ConfigProperties config = ConfigFactory.getInstance()
// 				.getConfigProperties(ConfigFactory.ELLA_CONFIG_PATH);
// 		db_driver = config.getProperty("mysql.db.driver");
// 		db_url = config.getProperty("mysql.db.url");
// 		db_userName = config.getProperty("mysql.db.user");
// 		db_passWord = config.getProperty("mysql.db.pwd");
// 	}
// 
// 	public static Connection getConnection() {
// 		Connection con = null;
// 		try {
// 			Class.forName(db_driver);
// 		} catch (ClassNotFoundException e) {
// 			System.out.println("3-ClassNotFoundException");
// 			e.printStackTrace();
// 			return null;
// 		}
// 		try {
// 			con = DriverManager.getConnection(db_url, db_userName, db_passWord);
// 		} catch (SQLException e) {
// 			System.out.println("4-SQLException");
// 			e.printStackTrace();
// 			return null;
// 		}
// 		return con;
// 	}
// 
// 	public static void close(Connection con, Statement stmt, ResultSet rs) {
// 		if (rs != null) {
// 			try {
// 				rs.close();
// 			} catch (SQLException e) {
// 				System.out.println("5--SQLException");
// 				e.printStackTrace();
// 			}
// 		}
// 		if (stmt != null) {
// 			try {
// 				stmt.close();
// 			} catch (SQLException e) {
// 				System.out.println("6-SQLException");
// 				e.printStackTrace();
// 			}
// 		}
// 		if (con != null) {
// 			try {
// 				con.close();
// 			} catch (SQLException e) {
// 				System.out.println("7-closeSQLException");
// 				e.printStackTrace();
// 			}
// 		}
// 	}
// 
// 	public static void close(Connection con, PreparedStatement pstmt,
// 			ResultSet rs) {
// 		if (rs != null) {
// 			try {
// 				rs.close();
// 			} catch (SQLException e) {
// 				System.out.println("8-SQLException");
// 				e.printStackTrace();
// 			}
// 		}
// 		if (pstmt != null) {
// 			try {
// 				pstmt.close();
// 			} catch (SQLException e) {
// 				System.out.println("9-SQLException");
// 				e.printStackTrace();
// 			}
// 		}
// 		if (con != null) {
// 			try {
// 				con.close();
// 			} catch (SQLException e) {
// 				System.out.println("10-closeSQLException");
// 				e.printStackTrace();
// 			}
// 		}
// 	}
// 
// 	public static void close(Connection con) {
// 		if (con != null) {
// 			try {
// 				con.close();
// 			} catch (SQLException e) {
// 				System.out.println("11-closeSQLException");
// 				e.printStackTrace();
// 			}
// 		}
// 	}
// 
// }


// Path: src/main/java/com/adintellig/ella/dao/ServerDaoImpl.java
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.adintellig.ella.model.Server;
import com.adintellig.ella.util.JdbcUtil;

				stmt.addBatch();
			}
			logger.info("[INSERT] Load Servers info into 'servers'. Size="
					+ beans.size());
		}
		stmt.executeBatch();
		JdbcUtil.close(con, stmt, null);
	}

	public boolean needUpdate(List<Server> beans) {
		if (null != beans && beans.size() > 0) {
			if (beans.size() != getTotalNumber())
				return true;
		}
		return false;
	}

	public void truncate() throws SQLException {
		Connection conn = JdbcUtil.getConnection();
		Statement stmt = conn.createStatement();
		stmt.executeUpdate("truncate table hbase.servers");
		JdbcUtil.close(conn,stmt,null);
	}

	public List<Server> list() throws Exception {
		Connection conn = JdbcUtil.getConnection();
		Statement stmt = conn.createStatement();
		ResultSet rs = stmt.executeQuery("select * from hbase.servers");
		List<Server> servers = new ArrayList<Server>();
		while (rs.next()) {
			Server s = new Server();