Quero fazer o mesmo exemplo de pool de conexoes do hsql com outros bancos que sao usados no mercado alguem pode me ajudar, principalmente o mysql e oracle
Quero fazer o mesmo exemplo de pool de conexoes do hsql com outros bancos que sao usados no mercado alguem pode me ajudar, principalmente o mysql e oracle
Olá Alexandre. Você pode dar uma olhada no tutorial do JournalDev
Você vai ter que baixar os drivers do MySQL ou Oracle (via Maven ou manualmente nos respectivos sites). e adicionar ao seu projeto. Depois o processo é basicamente o mesmo do hsql.
public class ConnectionPool {
private MysqlDataSource mysqlDataSource;
public ConnectionPool() {
mysqlDataSource = new MysqlDataSource();
mysqlDataSource.setURL("jdbc:mysql://localhost:3306/NomeDoBanco");
mysqlDataSource.setUser("USUARIO");
mysqlDataSource.setPassword("SENHA");
}
public Connection getConnection() {
return mysqlDataSource.getConnection();
}
}
Não sei por que o meu só rodou fazendo casting
package br.com.alura.jdbc;
import java.sql.Connection;
import java.sql.SQLException;
import javax.sql.DataSource;
import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;
public class ConnectionPool {
private DataSource mysqlDS;
public ConnectionPool() {
mysqlDS = new MysqlDataSource();
((MysqlDataSource) mysqlDS).setURL("jdbc:mysql://localhost:3306/aluralojavirtual");
((MysqlDataSource) mysqlDS).setUser("root");
((MysqlDataSource) mysqlDS).setPassword("root");
}
public Connection getConnection() throws SQLException {
return mysqlDS.getConnection();
}
Olá, Bernardo. Eu que te passei o exemplo errado mesmo. O seu jeito é o certo. Você poderia criar o atributo mysqlDS
como um MysqlDataSource
pra não ter que ficar fazendo o cast no método;
package br.com.alura.jdbc;
import java.sql.Connection;
import java.sql.SQLException;
import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;
public class ConnectionPool {
private MysqlDataSource mysqlDS;
public ConnectionPool() {
mysqlDS = new MysqlDataSource();
mysqlDS.setURL("jdbc:mysql://localhost:3306/aluralojavirtual");
mysqlDS.setUser("root");
mysqlDSsetPassword("root");
}
public Connection getConnection() throws SQLException {
return mysqlDS.getConnection();
}
}