Hola.
Esta clase se hace la peticion al pool que ya esta configurado en el servidor.
Código PHP:
import java.sql.*;
import javax.naming.InitialContext;
import javax.sql.DataSource;
public class ConnectionFactory {
private static String jndi="java:comp/env/jdbc/ConEnvDS";
public static Connection getConnection() throws SQLException{
Connection conn=null;
try{
InitialContext ini = new InitialContext();
DataSource ds = (DataSource) ini.lookup(jndi);
conn = ds.getConnection();
}catch(Exception e){
e.printStackTrace();
throw new SQLException(e.getMessage());
}
return conn;
}
public static void closeConnection(Connection conn) throws SQLException{
try{
if(conn!=null && !conn.isClosed()){
conn.close();
}
}catch(SQLException e){
e.printStackTrace();
}
}
}
esta clase realiza operaciones en la base de datos.
Código PHP:
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class ConsultasDAO {
public ConsultaaDAO(){}
public String getConsulta(String parametro) throws Exception{
String parametro2=null;
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
String sql = "select * from TABLA where PARAMETRO=? ";
try{
conn = ConnectionFactory.getConnection();
ps = conn.prepareStatement(sql);
ps.setString(1,parametro);
rs = ps.executeQuery();
if(rs.next()){
parametro2=rs.getString("PARAMETRO");
}
}catch(Exception e){
throw new SQLException(e.getMessage());
}finally{
if(rs != null)
rs.close();
if(ps != null)
ps.close();
}
ConnectionFactory.closeConnection(conn);
return parametro2;
}
}
si quieres pasate por la seccion de FAQs ahi puse un ejemplo de configurar y usar un pool de conexiones.
saludos.