Muitas ferramentas como NetBeans e Eclipse possuem classes prontas para serem utilizadas e algumas até na forma de Beans. Neste post vamos fazer algo da "velha guarda", vamos criar uma classe para acessar um banco de dados MySQL diretamente da linha de comando... e aproveitar para ver algumas pequenas configurações que temos que fazer para que isto funcione.
Vamos ver o código de teste de acesso.
//Classes necessarias para uso de Banco de dados //
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
//Inicio da classe de
//
// ************************************* ConexaoMySQL
//
//
class ConexaoMySQL {
public static String status = "Nao conectou...";
static String serverName = "localhost"; //caminho do servidor do BD
static String mydatabase ="mysql"; //nome do seu banco de dados
static String username = "root"; //nome de um usuario de seu BD
static String password = "senharoot"; //sua senha de acesso
private static Connection connection = null; //atributo do tipo Connection
//Metodo Construtor da Classe//
public ConexaoMySQL() {
}
public ConexaoMySQL(String usuario, String senha) {
username = usuario;
password = senha;
}
public ConexaoMySQL(String usuario, String senha, String host) {
serverName = host;
username = usuario;
password = senha;
}
//Metodo de Conexao//
public static java.sql.Connection getConexaoMySQL() {
return connection;
}
public static java.sql.Connection openConexaoMySQL() {
try {
// Carregando o JDBC Driver padrao
String driverName = "com.mysql.jdbc.Driver";
Class.forName(driverName);
// Configurando a nossa Conexao com um banco de dados//
String url = "jdbc:mysql://" + serverName + "/" + mydatabase;
connection = DriverManager.getConnection(url, username, password);
//Testa sua Conexao//
if (connection != null) {
status = ("STATUS--->Conectado com sucesso! [" + serverName + "]");
} else {
status = ("STATUS--->Nao foi possivel realizar Conexao");
}
return connection;
} catch (ClassNotFoundException e) {
//Driver nao encontrado
System.out.println("O driver expecificado nao foi encontrado.");
return null;
} catch (SQLException e) {
//Nao conseguindo se conectar ao banco
System.out.println("Nao foi possivel conectar ao Banco de Dados.");
return null;
}
}
//Metodo que retorna o status da sua Conexao//
public static String statusConection() {
return status;
}
//Metodo que fecha sua Conexao//
public static boolean FecharConexao() {
try {
connection.close();
return true;
} catch (SQLException e) {
return false;
}
}
//Metodo que reinicia sua Conexao//
public static java.sql.Connection ReiniciarConexao() {
FecharConexao();
return ConexaoMySQL.openConexaoMySQL();
}
}
public class TestaMySQL {
static ConexaoMySQL conn;
// main --> cria a conexão com o banco de dados e nada mais
public static void main(String[] args) {
conn = new ConexaoMySQL();
conn.openConexaoMySQL();
System.out.println(conn.statusConection());
if (conn.getConexaoMySQL() != null) {
System.out.println("Conexão realizada com sucesso !");
System.out.println("Esta na hora de colocar o código para acesso aos dados do MySQL");
}
conn.FecharConexao();
}
}
Para a classe de conexão funcionar são necessárias três classes de java.sql.
- Connection:
- DriverManager:
- SQLException:
- um sem parâmetros, assim são utilizados os valores default
- um com 2 parâmetros, permitindo selecionar um novo usuário e senha com acesso a localhost
- um que permite definir o usuário, senha e servidor
Não rodou! Por que?
Lembram-se do DriverManager que ele carregava "com.mysql.jdbc.Driver". Onde está este driver? O melhor lugar para ele estar (na sua máquina de desenvolvimento) é no diretorio ext do java. No meu computador isto quer dizer [C:\Arquivos de programas\Java\jre7\lib\ext].
Este driver pode ser achado em [http://dev.mysql.com/downloads/connector/j/]. Faça o download do arquivo para um local no seu computador. Descompacte e copie o arquivo [mysql-connector-java-5.1.19-bin.jar] para o diretório ext.
Dependendo de quando você estiver lendo este post o número de versão do arquivo poderá ser diferente.
Vamos tentar novamente:
Funciona!!!
Em breve vamos rodar alguns selects, inserts, updates em tabelas do MySQL.
Dê uma olhada no vídeo para os passos deste post.
Nenhum comentário:
Postar um comentário