Olá!
Estou tentando configurar um pool de conexões na minha aplicação JSP, juntamente com o TomCat 5.5
Já coloquei os JARs necessários no lib do TomCat e criei a classe de conexão, porém, não estou conseguindo efetuar a conexão com o BD.
O que está faltando para conectar? Como fica o código dentro da aplicação?
Alguém tem alguma dica?
Valeuu
Coloque o código para analisarmos…
Ok! vamos lah.
1- No diretório C:\Tomcat\conf\Catalina\localhost eu tenho o arquivo tcc.xml, no qual eu inclui as seguintes informações para configurar o pool (dentro da tag <Context>), onde “multimeios” é o nome do meu BD.
<!-- Implementacao do connection pool para banco de dados -->
<Resource name=“jdbc/multimeios” auth=“Container” type=“javax.sql.DataSource” scope="Shareable"
factory="org.apache.commons.dbcp.BasicDataSourceFactory"
maxActive=“300” maxIdle=“10” maxWait="100"
username=“root” password="admin"
driverClassName="com.mysql.jdbc.Driver"
url=“jdbc:mysql://localhost:3306/multimeios?autoReconnect=true” />
2- Coloquei na pasta lib os JARs, entre eles o driver do MySQL: mysql-connector-java-3.1.13-bin.jar
3- Então criei a classe de conexão com o seguinte código:
import java.sql.Connection;
import java.sql.SQLException;
import javax.sql.DataSource;
import javax.naming.NamingException;
import javax.naming.InitialContext;
_/**
-
@
-
-
Classe para criar um data source no connection pool e abrir e fechar conexao
*/
public class ConnectorDB {
private Connection conexao;
protected static DataSource dataSource;
public ConnectorDB() throws Exception {
if (dataSource == null) {
try {
InitialContext ic = new InitialContext();
// tomcat
dataSource = (DataSource) ic.lookup(“java:comp/env/jdbc/multimeios”);
} catch (NamingException ex) {
throw ex;
}
}
}
public Connection getConnection() throws SQLException {
conexao = null;
try {
conexao = dataSource.getConnection();
} catch (SQLException e) {
throw e;
}
return conexao;
}
public void closeConnection (Connection conn) {
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {}
}
}
}
Mas essa classe de conexão eu não tenho certeza se precisa ser um arquivo .class ou um .java e também não sei onde devo salvá-la…
4- E finalmente tenho o código para utiliza o pool na minha aplicação:
Connection con;
// instancia classe de conexao com o banco
try {
db = new ConnectorDB();
} catch (Exception e) {
// erro ao carregar contexto
return;
}
// obtem a conexao do pool de conexoes
try {
con = db.getConnection();
} catch (SQLException e) {
// erro ao conectar no banco de dados
return;
}
// para fechar a conexao
db.closeConnection(con);
Mas esse código eu não sei exatamente em que parte devo inserir da minha aplicação .JSP…
Muuuiiitttoooo obrigada pela ajuda, estou precisando muito que essa conexão de certo.
Olá mariana_carvalhoPJ , da próxima vez coloque seu código entre tags . Vai ajudar a visualizar melhor.
Você conseguiu? Está tento alguma msg de erro?