📄 daohelper.java
字号:
/*
* Created on 16-ene-2005 23:18:16
*
*/
package com.martincuervo.javatest.business.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.ResourceBundle;
/**
* @author Jorge Martin Cuervo <jorge@martincuervo.com>
*
*/
public class DAOHelper {
private Connection connection;
private ResourceBundle resources;
public DAOHelper(String resourceBundleName, Connection connection) {
resources = ResourceBundle.getBundle(resourceBundleName);
this.connection = connection;
}
/**
* Ejecuta la sentencia definida en la clave
*
* @param queryKey
* @param params
* @param disconnect true para desconectar
*/
public void executeQuery(String queryKey, Object[] params, boolean disconnect) {
String queryString = resources.getString(queryKey);
PreparedStatement stm = null;
try {
stm = connection.prepareStatement(queryString);
if (params != null) {
for (int i = 0; i < params.length; i++) {
stm.setObject(i+1, params[i]);
}
}
//System.out.println(queryString + "\n" + Arrays.asList(params));
stm.execute();
} catch (SQLException e) {
} finally {
try {
if (stm != null) stm.close();
} catch (SQLException e) {
System.out.println("Error, no puedo cerrar la sentencia.");
}
if (disconnect) {
try {
connection.close();
} catch (SQLException e) {
System.out.println("Error, no puedo cerrar la conexion.");
}
}
}
}
public List executeSelect(String queryKey, Object[] params,
IResultSetWrapper wrapper, boolean disconnect) {
String queryString = resources.getString(queryKey);
PreparedStatement stm = null;
ResultSet rs = null;
List list = new ArrayList();
try {
stm = connection.prepareStatement(queryString);
if (params != null) {
for (int i = 0; i < params.length; i++) {
stm.setObject(i+1, params[i]);
}
}
rs = stm.executeQuery();
while (rs.next()) {
list.add(wrapper.transform(rs));
}
} catch (SQLException e) {
} finally {
try {
if (rs != null) rs.close();
} catch (SQLException e) {
System.out.println("Error, no puedo cerrar la sentencia.");
}
try {
if (stm != null) stm.close();
} catch (SQLException e) {
System.out.println("Error, no puedo cerrar la sentencia.");
}
if (disconnect) {
try {
connection.close();
} catch (SQLException e) {
System.out.println("Error, no puedo cerrar la conexion.");
}
}
}
return list;
}
/**
*
* @param queryKey
* @param params
*/
public void executeQuery(String queryKey, Object[] params) {
executeQuery(queryKey, params, true);
}
public List executeSelect(String queryKey, Object[] params,
IResultSetWrapper wrapper) {
return executeSelect(queryKey, params, wrapper, true);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -