Como se conectar a um banco de dados MySQL com Java

Como se conectar a um banco de dados MySQL com Java

Java fornece JDBC (Java DataBase Connectivity) como parte do Java SDK (Software Development Kit). Usando este INCÊNDIO , é muito fácil conectar-se a um banco de dados relacional e executar operações comuns, como consultar, inserir, atualizar e excluir registros.





Embora a API JDBC principal esteja incluída em java, a conexão com um banco de dados específico, como MySQL ou SQL Server, requer um componente adicional conhecido como driver de banco de dados. Este driver de banco de dados é um componente de software que traduz as chamadas JDBC principais em um formato compreendido por esse banco de dados.





como adicionar jogos nes ao clássico snes

Neste artigo, vamos examinar os detalhes da conexão com um banco de dados MySQL e como realizar algumas consultas com ele.





O driver de banco de dados MySQL

Conforme explicado acima, para poder se conectar a um banco de dados MySQL, você precisa do driver JDBC para MySQL. Isso é chamado de driver Conector / J e pode ser baixado de o site MySQL aqui.

Depois de baixar o arquivo ZIP (ou TAR.GZ), extraia o arquivo e copie o arquivo JAR mysql-connector-java - bin.jar para um local adequado. Este arquivo é necessário para executar qualquer código que use o driver MySQL JDBC.



Criando um Banco de Dados de Amostra

Supondo que você tenha baixado o banco de dados MySQL e configure-o corretamente onde você tem acesso a ele, vamos criar um banco de dados de exemplo para que possamos usá-lo para conectar e realizar consultas.

Conecte-se ao banco de dados usando um cliente de sua escolha e execute as instruções a seguir para criar um banco de dados de amostra.





create database sample;

Também precisamos de um nome de usuário e senha para nos conectarmos ao banco de dados (a menos que você queira se conectar como administrador, o que geralmente é uma má ideia).

O seguinte cria um usuário chamado testuser quem irá se conectar ao banco de dados MySQL da mesma máquina onde está sendo executado (indicado por localhost ), usando a senha securepwd .





create user 'testuser'@'localhost' identified by 'securepwd';

Se você estiver se conectando a um banco de dados em execução em outra máquina (chamado remotemc ), você precisa usar o seguinte ( remotemc pode ser um nome de host ou um endereço IP):

create user 'testuser'@'remotemc' identified by 'securepwd';

Agora que o nome de usuário e a senha foram criados, precisamos conceder acesso ao banco de dados de amostra criado anteriormente.

grant all on sample.* to 'testuser'@'localhost';

Ou, se o banco de dados for remoto:

grant all on sample.* to 'testuser'@'remotemc';

Agora você deve verificar se pode conectar ao banco de dados como o usuário que você acabou de criar com a mesma senha. Você também pode executar os seguintes comandos após conectar-se, para garantir que as permissões estejam corretas.

create table joe(id int primary key auto_increment, name varchar(25));
drop table joe;

Configure o caminho da classe Java

Vamos agora entrar nos detalhes de como se conectar ao MySQL a partir de Java. A primeira etapa é carregar o driver do banco de dados. Isso é feito invocando o seguinte em um local adequado.

como conectar wii à smart tv
Class.forName('com.mysql.jdbc.Driver');

O código pode lançar uma exceção, então você pode capturá-lo se quiser lidar com ele (como formatar a mensagem de erro para uma GUI).

try {
Class.forName('com.mysql.jdbc.Driver');
} catch(ClassNotFoundException ex) {
// use the exception here
}

É muito comum invocar este código em um bloco estático na classe para que o programa falhe imediatamente se o driver não puder ser carregado.

public class Sample
{
static {
try {
Class.forName('com.mysql.jdbc.Driver');
} catch(ClassNotFoundException ex) {
System.err.println('Unable to load MySQL Driver');
}
}
}

Obviamente, para encontrar o driver, o programa deve ser chamado com o driver JAR (baixado e extraído acima) incluído no caminho da classe como segue.

java -cp mysql-connector-java - bin.jar: ...

Conectando-se ao MySQL a partir de Java

Agora que esclarecemos os detalhes de carregamento do driver MySQL do java, vamos nos conectar ao banco de dados. Uma maneira de criar uma conexão de banco de dados é usar o DriverManager .

String jdbcUrl = ...;
Connection con = DriverManager.getConnection(jdbcUrl);

E qual é o jdbcUrl ? Ele indica os detalhes da conexão, incluindo o servidor onde o banco de dados está localizado, nome de usuário e assim por diante. Aqui está um exemplo de URL para nosso exemplo.

String jdbcUrl = 'jdbc:mysql://localhost/sample?user=testuser&password=secrepwd';

Observe que incluímos todos os parâmetros necessários para a conexão, incluindo o nome do host ( localhost ), usuário e senha. (Incluir uma senha como esta NÃO é uma boa prática, consulte as alternativas abaixo.)

Usando este jdbcUrl , aqui está um programa completo para verificar a conectividade.

public class Sample
{
static {
try {
Class.forName('com.mysql.jdbc.Driver');
} catch(ClassNotFoundException ex) {
System.err.println('Unable to load MySQL Driver');
}
}
static public void main(String[] args) throws Exception
{
String jdbcUrl = 'jdbc:mysql://localhost/sample?user=testuser&password=securepwd';
Connection con = DriverManager.getConnection(jdbcUrl);
System.out.println('Connected!');
con.close();
}
}

Observe que uma conexão com o banco de dados é um recurso precioso em um programa e deve ser fechada adequadamente como descrito acima. O código acima, entretanto, não fecha a conexão em caso de exceção. Para fechar a conexão em uma saída normal ou anormal, use o seguinte padrão:

try(Connection con = DriverManager.getConnection(jdbcUrl)) {
System.out.println('Connected!');
}

Conforme observado acima, não é uma boa ideia incorporar a senha ao URL JDBC. Para especificar o nome de usuário e a senha diretamente, você pode usar a seguinte opção de conexão.

como baixar adobe flash no mac
String jdbcUrl = 'jdbc:mysql://localhost/sample';
try(Connection con = DriverManager.getConnection(jdbcUrl, 'testuser', 'securepwd')) {
}

Consultando o banco de dados em Java

Agora que a conexão com o banco de dados foi estabelecida, vamos ver como realizar uma consulta, como consultar a versão do banco de dados:

select version();

Uma consulta é executada em java da seguinte maneira. UMA Demonstração objeto é criado e uma consulta é executada usando o executeQuery () método que retorna um ResultSet .

String queryString = 'select version()';
Statement stmt = con.createStatement();
ResultSet rset = stmt.executeQuery(queryString);

Imprima a versão do ResultSet do seguinte modo. 1 refere-se ao índice da coluna nos resultados, a partir de 1.

while ( rset.next()) {
System.out.println('Version: ' + rset.getString(1));
}

Depois de processar os resultados, os objetos precisam ser fechados.

rset.close();
stmt.close();

E isso cobre tudo que há para se conectar ao MySQL a partir de java e realizar uma consulta simples.

Verifique também nosso Folha de referências de comandos SQL .

Compartilhado Compartilhado Tweet O email Posso instalar o Windows 11 em um PC incompatível?

Agora você pode instalar o Windows 11 em PCs mais antigos com o arquivo ISO oficial ... mas é uma boa ideia fazer isso?

Leia a seguir
Tópicos relacionados
  • Programação
  • Java
  • SQL
Sobre o autor Jay Sridhar(17 artigos publicados) Mais de Jay Sridhar

Assine a nossa newsletter

Junte-se ao nosso boletim informativo para dicas de tecnologia, análises, e-books grátis e ofertas exclusivas!

Clique aqui para se inscrever