@Override public List<ZooKeeperCluster> getAllZooKeeperClusterIdAndName() throws DaoException { List<ZooKeeperCluster> zookeeperClusterList = new ArrayList<ZooKeeperCluster>(); ResultSet rs = null; DBConnectionResource myResultSet = null; try { myResultSet = DbcpUtil.executeQuery(SQL_QUERY_ALL_CLUSTER_ID_NAME); if (null == myResultSet) throw new DaoException("没有返回结果"); rs = myResultSet.resultSet; while (rs.next()) { int clusterId = rs.getInt("cluster_id"); String clusterName = rs.getString("cluster_name"); ZooKeeperCluster zookeeperCluster = new ZooKeeperCluster(); zookeeperCluster.setClusterId(clusterId); zookeeperCluster.setClusterName(clusterName); zookeeperClusterList.add(zookeeperCluster); } return zookeeperClusterList; } catch (Exception e) { throw new DaoException( "Error when query all zookeeper cluster id and name, Error: " + e.getMessage(), e); } finally { if (null != myResultSet) { DbcpUtil.closeResultSetAndStatement(rs, myResultSet.statement); DbcpUtil.returnBackConnectionToPool(myResultSet.connection); } } }
public ZooKeeperCluster getZooKeeperClusterByCulsterId(int clusterId) throws DaoException { ZooKeeperCluster zookeeperCluster = null; // 从数据库中获取指定zookeeper集群中所有机器 ResultSet rs = null; DBConnectionResource myResultSet = null; try { String querySQL = StringUtil.replaceSequenced(SQL_QUERY_CLUSTER_BY_ID, clusterId + EMPTY_STRING); myResultSet = DbcpUtil.executeQuery(querySQL); if (null == myResultSet) throw new DaoException("没有返回结果"); rs = myResultSet.resultSet; if (rs.next()) { String clusterName = rs.getString("cluster_name"); String serverListStr = rs.getString("server_list"); String description = rs.getString("description"); List<String> serverList = null; if (!StringUtil.isBlank(serverListStr)) { String[] serverListArray = serverListStr.split(COMMA); serverList = ArrayUtil.toArrayList(serverListArray); } zookeeperCluster = new ZooKeeperCluster(); zookeeperCluster.setClusterId(clusterId); zookeeperCluster.setClusterName(clusterName); zookeeperCluster.setServerList(serverList); zookeeperCluster.setDescription(description); } return zookeeperCluster; } catch (Exception e) { throw new DaoException( "Error when query zookeeper cluster by cluster_id: " + clusterId + ", Error: " + e.getMessage(), e); } finally { if (null != myResultSet) { DbcpUtil.closeResultSetAndStatement(rs, myResultSet.statement); DbcpUtil.returnBackConnectionToPool(myResultSet.connection); } } }
@Override public int addZooKeeper(ZooKeeperCluster zooKeeperCluster) throws DaoException { if (null == zooKeeperCluster) return -1; try { String serverListString = CollectionUtil.toString(zooKeeperCluster.getServerList()); String insertSql = StringUtil.replaceSequenced( SQL_ADD_ZOOKEEPER_CLUSTER, zooKeeperCluster.getClusterName(), serverListString, zooKeeperCluster.getDescription()); int key = DbcpUtil.executeInsertAndReturnGeneratedKeys(insertSql); return key; } catch (Exception e) { throw new DaoException( "Error when add zooKeeperCluster" + zooKeeperCluster + ", Error: " + e.getMessage(), e); } }
@Override public List<ZooKeeperCluster> getAllDetailZooKeeperCluster() throws DaoException { List<ZooKeeperCluster> zookeeperClusterList = new ArrayList<ZooKeeperCluster>(); // 从数据库中获取指定zookeeper集群中所有机器 ResultSet rs = null; DBConnectionResource myResultSet = null; try { myResultSet = DbcpUtil.executeQuery(SQL_QUERY_ALL_DETAIL_CLUSTER); if (null == myResultSet) throw new DaoException("没有返回结果"); rs = myResultSet.resultSet; while (rs.next()) { int clusterId = rs.getInt("cluster_id"); String clusterName = rs.getString("cluster_name"); String serverListStr = rs.getString("server_list"); String description = rs.getString("description"); List<String> serverList = null; if (!StringUtil.isBlank(serverListStr)) { String[] serverListArray = serverListStr.split(COMMA); serverList = ArrayUtil.toArrayList(serverListArray); } ZooKeeperCluster zookeeperCluster = new ZooKeeperCluster(); zookeeperCluster.setClusterId(clusterId); zookeeperCluster.setClusterName(clusterName); zookeeperCluster.setServerList(serverList); zookeeperCluster.setDescription(description); zookeeperClusterList.add(zookeeperCluster); } return zookeeperClusterList; } catch (Exception e) { throw new DaoException("Error when query all zookeeper cluster, Error: " + e.getMessage(), e); } finally { if (null != myResultSet) { DbcpUtil.closeResultSetAndStatement(rs, myResultSet.statement); DbcpUtil.returnBackConnectionToPool(myResultSet.connection); } } }
@Override public boolean updateZooKeeperSettingsByClusterId(ZooKeeperCluster zooKeeperCluster) throws DaoException { if (null == zooKeeperCluster) return false; // 从数据库中获取指定zookeeper集群中所有机器 try { String serverListString = EMPTY_STRING; List<String> serverList = zooKeeperCluster.getServerList(); if (null != serverList && !serverList.isEmpty()) { for (String server : serverList) { serverListString += server + COMMA; } serverListString = StringUtil.replaceLast(serverListString, COMMA, EMPTY_STRING); } String updateSql = StringUtil.replaceSequenced( SQL_UPDATE_ZOOKEEPER_CLUSTER_SETTINGS_BY_ID, zooKeeperCluster.getClusterName(), serverListString, zooKeeperCluster.getDescription(), zooKeeperCluster.getClusterId() + EMPTY_STRING); int num = DbcpUtil.executeUpdate(updateSql); if (1 == num) { return true; } return false; } catch (Exception e) { throw new DaoException( "Error when update zooKeeperCluster by cluster_id: " + zooKeeperCluster + ", Error: " + e.getMessage(), e); } }