2009年8月3日月曜日

DBManager

package fw;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.*;


public class DBManager {
public static Connection getConnection() {
try {
Class.forName("org.hsqldb.jdbcDriver");
Connection con = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost", "sa", "");
return con;
} catch (Exception e) {
throw new IllegalStateException(e);
}
}


/**
* 更新SQLを発行し、結果をオブジェクトのListに入れて返す。
* ResultSetからListへの変換は、ResultSetBeanMappingが行う。
*/
public static int simpleUpdate(String sql) throws SQLException{
Connection con = null;
Statement smt = null;
try{
con = DBManager.getConnection();
smt = con.createStatement();
return smt.executeUpdate(sql);
}
finally{
if(smt != null){
try{
smt.close();
}
catch(SQLException ignore){
}
}
if(con != null){
try{
con.close();
}
catch(SQLException ignore){
}
}
}
}


/**
* 更新SQLを発行し、結果をオブジェクトのListに入れて返す。
* ResultSetからListへの変換は、ResultSetBeanMappingが行う。
*/
public static List simpleFind(String sql, ResultSetBeanMapping mapping)
throws SQLException{
Connection con = null;
Statement smt = null;
try{
con = DBManager.getConnection();
smt = con.createStatement();
ResultSet rs = smt.executeQuery(sql);
List list = new ArrayList();
int i = 0;
while(rs.next()){
Object bean = mapping.createFromResultSet(rs);
list.add(bean);

System.out.println(list.get(i) + " : DBManager");
i++;
}
return list;
}
finally{
if(smt != null){
try{
smt.close();
}
catch(SQLException ignore){
}
}
if(con != null){
try{
con.close();
}
catch(SQLException ignore){
}
}
}
}
}

0 件のコメント:

コメントを投稿