今MVCモデルに沿ってコーディングしてるんですが、
Model内にDBにアクセスするクラスDatabaseを置いてます。
このクラスDatabaseのメソッドgetListをController内のクラスで呼び出して使ってるんですが、
このメソッドの戻り値をResultSetにしています。
Java
1public ResultSet getList(){ 2 3Connection con = //省略 4PreparedStatement stmt=null; 5 6stmt = con.prepareStatement("select * from test"); 7 8return stmt.executeQuery(); 9 10}
何故かというと、Controller側でこのResultSetをwhileループでぶん回して1レコードずつ処理したいからです。
でもこのような設計だと呼び出し側でResultSetをcloseしなきゃならないうえ、PreparedStatementとConnectionをクローズできません。
(PreparedStatementとConnectionはResultSetのclose後にcloseすると勉強したため)
ResultSetはどっちかというとModel側だけで使う型なのかなとも思いますし、何か良い方法ないでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/09/15 10:09
2016/09/15 11:37