我有用於生成數據中心標識和數據中心名稱的Java對象。如何從Java對象獲取元素
private List<listDatacentersObj> listDatacenters;
public void initListDatacenters() throws SQLException {
// Generate List of Datacenters
listDatacenters = new ArrayList<>();
if (ds == null) {
throw new SQLException("Can't get data source");
}
/* Initialize a connection to Oracle */
Connection conn = ds.getConnection();
if (conn == null) {
throw new SQLException("Can't get database connection");
}
/* With SQL statement get all settings and values */
PreparedStatement ps = conn.prepareStatement("select y.componentstatsid, y.name "
+ "FROM component x, componentstats y where x.componentstatsid = y.componentstatsid and y.componenttypeid = 1000");
try {
//get data from database
ResultSet result = ps.executeQuery();
while (result.next()) {
/* Put the the data from Oracle into Hash Map */
listDatacenters.add(new listDatacentersObj(result.getInt("COMPONENTSTATSID"), result.getString("NAME")));
}
} finally {
ps.close();
conn.close();
}
}
public class listDatacentersObj {
private int datacenterid;
private String datacentername;
public listDatacentersObj(int datacenterid, String datacentername){
this.datacenterid = datacenterid;
this.datacentername = datacentername;
}
public int getDatacenterid() {
return datacenterid;
}
public void setDatacenterid(int datacenterid) {
this.datacenterid = datacenterid;
}
public String getDatacentername() {
return datacentername;
}
public void setDatacentername(String datacentername) {
this.datacentername = datacentername;
}
@Override
public String toString()
{
return datacentername;
}
}
// Get the list with Datacenters
public List<listDatacentersObj> getlistDatacenters() throws SQLException {
// Get the list of Datacenters from Oracle
return listDatacenters;
}
的問題是我如何使用數據中心的關鍵數據中心獲取名。與hashmap類似,我想根據key獲取值。
你爲什麼不只是使用一個HashMap呢? – Mads
請遵循Java命名約定,並使類名稱以大寫字母開頭,以便更好地讀取代碼。 – jlordo