このJavaコードは、データベースのデータをJSFテーブルに表示するために使用するマネージドBeanの一部です。try-catch例外を使用してこのコードを改善する方法
//connect to DB and get customer list
public List<Dashboard> getDashboardList() throws SQLException {
if (ds == null) {
throw new SQLException("Can't get data source");
}
//get database connection
Connection con = ds.getConnection();
if (con == null) {
throw new SQLException("Can't get database connection");
}
PreparedStatement ps = con.prepareStatement(
"SELECT * from GLOBALSETTINGS");
//get customer data from database
ResultSet result = ps.executeQuery();
List<Dashboard> list = new ArrayList<Dashboard>();
while (result.next()) {
Dashboard cust = new Dashboard();
cust.setUser(result.getString("SessionTTL"));
cust.setPassword(result.getString("MAXACTIVEUSERS"));
//store all data into a List
list.add(cust);
}
ps.close();
con.close();
return list;
}
このコードを改善してtry catch文を挿入します。これを行う適切な方法は何ですか?
私は完全に質問を理解していません。 try/catchを、コードを生成できるコードのまわりに置いてください。コメントはそれほど有用ではありません、btw。 –
投稿したコードに何が間違っていると思いますか? – unholysampler
'ps.executeQuery()'が 'SQLException'をスローすると、何が起きるか(むしろ起こらないでしょうか?) 'ps.close()'や 'con.close()'は今まで呼ばれていますか?これを考慮し、 'try' /' catch'/'finally'を使ってどのように修正するのかを判断してください。 –