连接到执行的数据库: 1.-创建一个类conexionX,我放置数据连接(没有连接池) 2.-在DAO类中从conexionX类获取Connection,以便操作数据库。
我的问题是如何使用连接池进行操作?
我尝试了以下操作,但无法正常工作
PoolConexiones.java
不是servlet是普通类
package Modelo;
import java.sql.*;
import javax.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.naming.*;
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
public class PoolConexiones extends HttpServlet {
private DataSource sourceDb = null;
private Connection con=null;
@Override
public void init(ServletConfig config) throws ServletException {
// TODO Auto-generated method stub
super.init(config);
try {
// recuperamos el contexto inicial y la referencia a la fuente de
// datos
Context ctx = new InitialContext();
sourceDb = (DataSource) ctx.lookup("java:comp/env/jdbc/Practica5");
} catch (Exception e) {
throw new ServletException(
"Imposible recuperar java:comp/env/jdbc/tutoriales", e);
}
}
public Connection getConnection() {
try {
synchronized (sourceDb) {
con=sourceDb.getConnection();
}
if(con==null){
throw new ServletException("Problemas con la conexion");
}
} catch (SQLException e) {
e.printStackTrace();
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return con;
}
public void CerraConexion(){
try {
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}