Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/06/2013, 23:58
__KEWIN
 
Fecha de Ingreso: mayo-2013
Mensajes: 4
Antigüedad: 11 años
Puntos: 0
Pool de conexiones - Java

Hola todos les agradezco que estén leyendo este foro necesito que me den una mano para adaptar una conexión que tengo a un Pool de conexiones con MySql estuve leyendo pero la verdad es que soy nuevo en este tema. La necesidad surge por la lentitud en el programa al mostrar los datos, tengo la sgte conexión:

Código:
//Con_BD.java
public class Con_BD {
   
    public static Connection getConnection() {
       
        Connection cn = null;
        try {
            Class.forName("com.mysql.jdbc.Driver");
            String url = "jdbc:mysql://direccion:3306/basedatos";//direccion:puerto/bd
            String user = "user";//usuario
            String password = "123456";//contraseña
            cn= DriverManager.getConnection(url, user, password);
        } catch (ClassNotFoundException e) {
            System.out.println("Error no se puede cargar el driver:" + e.getMessage());
        } catch (SQLException e) {
            System.out.println("Error no se establecer la conexion:" + e.getMessage());
        }
        return cn;
    }
}
Tengo otro archivo llamado Personal.java que contiene los get y set de mis campos

Código:
//trozo de Personal.java
public class Personal {
    private String uname;

    public String getuname(){
        return uname;
    }
    public void setuname(String uname){
        this.uname=uname;
    }
}
Bueno luego utilizo esta conexión en mis archivos para hacer las consultas etc...

Código:
//Trozo de BD_Personal.java
public static Personal buscarPersonalUNCompCodigo(int codigo) throws SQLException {
        Connection cnn = Con_BD.getConnection();
        PreparedStatement ps = null;
        Personal ms = null;
        ps = cnn.prepareStatement("select uname from personal where id_personal=?");
        ps.setInt(1, codigo);
        ResultSet rs = ps.executeQuery();
        if (rs.next()) {
            ms = new Personal() {
            };
           
            ms.setuname(rs.getString("uname"));
        }
        cnn.close();
        ps.close();
        return ms;
}
Aquí utilizo Con_BD.getConnection() y esto es lo que necesitaría con el Pool ya que todos mis archivos los tengo así.

Bueno este ya es casi un aporte espero su ayuda ya luego are unos aportes como alternativas a las que te da Java como que opinan del código. Saludos y gracias de antemano

(Todo esto que escribí es lo que uso sin el Pool de Conexiones)

Estoy Buscando ayuda por todos lados...