Como conectar o banco de dados em Java?

Ao escrever um aplicativo de TI usando qualquer linguagem de programação, o fluxo de dados de e para o aplicativo atende à funcionalidade principal. Se o fluxo de dados for afetado de alguma forma, poderá afetar adversamente a funcionalidade do aplicativo e causar uma grande perda para os negócios.

Atualmente, existem métodos diferentes disponíveis para conectar seu programa a um banco de dados, a fim de fornecer aos usuários as informações solicitadas, coletar informações dos usuários, excluir as informações conforme exigido pelo usuário e também atualizar dados para o banco de dados diariamente.

Vamos examinar uma dessas abordagens usando Java como nossa linguagem de programação, JDBC como método de conectividade de banco de dados e seguindo a abordagem orientada a objetos.

O que é o JDBC?

JDBC significa Java Database Connectivity e ajuda um programa Java a executar diferentes tipos de operações no banco de dados, como criar, ler, atualizar e excluir. Além disso, o JDBC é uma API Java.

Usando o JDBC, um programador deve ser capaz de:

  • Estabelecer uma conexão com o banco de dados
  • Execute comandos SQL enviando-o para o banco de dados
  • Interpreta os resultados provenientes do banco de dados

Criando um banco de dados para conectar o banco de dados em Java

Antes de trabalhar com o JDBC, é necessário ter um banco de dados para conectar-se a ele. Usaremos o banco de dados Oracle para fins de ilustração. Faça o download do oracle 11g express edition no link abaixo.

https://www.oracle.com/technetwork/products/express-edition/overview/index-100989.html

Já tenho o instalador do Oracle 10g pronto, como você pode ver abaixo:

Fonte : Na minha área de trabalho

  • Por favor, clique duas vezes no instalador, a tela abaixo será exibida. Clique em Avançar.

Fonte : Na minha área de trabalho

  • Aceite o contrato de licença e clique em Avançar.

Fonte : Na minha área de trabalho

  • Mantenha as configurações padrão como estão e clique em Avançar.

Fonte : Na minha área de trabalho

  • Ele solicitará uma senha que será necessária quando você efetuar login na instância do Oracle 11g. Forneça a senha e clique em Avançar.

Fonte : Na minha área de trabalho

  • Depois de fornecer a senha, o processo de instalação será iniciado. Após a conclusão da instalação, um ícone de atalho será criado na tela da área de trabalho. Se você não conseguir encontrá-lo, acesse o Windows Start e procure pelo Oracle, você deve obtê-lo. Clique nele e ele abrirá um thin client para você através de um navegador. Efetue login na instância. Observe que o nome de usuário será o mesmo para o Oracle DB, ou seja, o sistema. A senha será a que você forneceu ao configurar o banco de dados.

Fonte: Na minha área de trabalho

  • Agora, depois que você fizer login, a primeira tela que você verá será parecida abaixo:

Fonte: Na minha área de trabalho

  • Agora vamos criar uma tabela. Por favor, clique no módulo SQL na tela acima e execute a consulta abaixo.

Fonte: Na minha área de trabalho

  • Como você pode ver, criamos uma tabela com o nome Educba.

Conectar banco de dados em Java

Existem poucas interfaces e classes usadas para conectar-se a um banco de dados e executar operações usando a API JDBC.

Vamos explicar um por um, mas deixe-me apresentar primeiro o programa abaixo:



Fonte: Na minha área de trabalho

Abaixo estão as interfaces que usaremos para conectar-se ao banco de dados e executar operações sobre ele:

  1. Driver Manager
  2. Conexão
  3. Declaração
  4. Conjunto de resultados
  5. Declaração preparada

Vejamos as operações que podemos executar como parte da operação JDBC.

  1. Armazene os dados de uma entidade em um banco de dados, ou seja, a operação de criação
  2. Recuperar os dados para a entidade ou um bean de um banco de dados
  3. Atualize os dados da entidade ou do bean no banco de dados
  4. Exclua ou remova os dados da entidade ou de um bean do banco de dados.

Independentemente da operação que realizamos, existem algumas etapas básicas que permaneceriam as mesmas:

1. Carregue o driver.

Class. forName ("oracle.jdbc.driver.OracleDriver");

2. Crie uma string de URL

String url="jdbc:oracle:thin:@172:.26.132.40:1521:orclilp";

3. Use o gerenciador de drivers para criar uma conexão

con=DriverManager.getConnection(URL, USERNAME, PASSWORD);

4. Use a referência de conexão para criar uma instrução

stmt = conn.createStatement();

5. Use uma instrução para executar a consulta

6. Processe o conjunto de resultados (opcional, depende)

7. Libere os recursos no bloco finalmente.

Ilustração

Como estamos usando o banco de dados Oracle em nossa ilustração, precisamos ter o driver necessário que deve ser fornecido pela Oracle. A classe do driver geralmente está na forma de arquivo jar com o nome ojdbc14.jar. Este driver deve ser importado para o seu programa java como parte de "Bibliotecas referenciadas" se não estiver lá.

Se você instalou o Oracle 11g na pasta C, ele pode ser encontrado idealmente no caminho abaixo: (Se não estiver lá, pode ser facilmente baixado aqui)

C: \ oraclexe \ app \ oracle \ product \ 10.2.0 \ server \ jdbc \ lib

Fonte: Na minha área de trabalho

Muitos arquivos jar devem estar disponíveis, mas o ojdbc14.jar é o mais recente. O mesmo pode ser usado para nosso propósito. Este jar deve ser adicionado ao caminho de classe do projeto. Verifique a imagem abaixo.

Fonte: Na minha área de trabalho

Vamos criar uma tabela de artistas com os seguintes atributos: (Você pode executar diretamente a linha de comando SQL, que vem como um módulo separado da edição Oracle Express. Mas primeiro você precisa se conectar e pode executar o comando "connect" para conectar-se ao o banco de dados.

Fonte: Na minha área de trabalho

Como parte desta ilustração, estaríamos criando três classes java, como Artist.java, CreateTable.java e ArtistManagementDao.java para conseguir isso.

Também na camada java, precisamos criar uma classe chamada bean de artista. Esta classe deve ter atributos do Artista com o contexto acima. Será parecido abaixo:

Artist.java

Vamos criar 2 outras classes java com o nome ArtistManagementDao e CreateTable.java

ArtistManagementDao.java

package com;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class ArtistManagementDao (
private final static String DRIVERNAME="oracle.jdbc.driver.OracleDriver";
private final static String URL="jdbc:oracle:thin:@LENOVO-PC:1521:XE";
private final static String USERNAME="System";
private final static String PASSWORD="Your DB password";
private Connection con =null;
public void addArtist(Artist a)
(
try (
Class.forName(DRIVERNAME);
String sql="insert into Artist1 values (?, ?)";
con=DriverManager.getConnection(URL, USERNAME, PASSWORD);
PreparedStatement pst=con.prepareStatement(sql);
pst.setString(1, a.getArtistID());
pst.setString(2, a.getArtistName());
pst.executeUpdate();
) catch (ClassNotFoundException e) (
// TODO Auto-generated catch block
System.out.println(e);
) catch (SQLException e) (
System.out.println(e);
)
)
)

CreateTable.java

package com;
import java.sql.*;
public class CreateTable(
static final String DB_URL = "jdbc:oracle:thin:@LENOVO-PC:1521:XE";
static final String USER = "System";
static final String PASS = "Your DB Password";
public static void main(String() args) (
Connection conn = null;
Statement stmt = null;
try(
ArtistManagementDao am=new ArtistManagementDao();
Artist a=new Artist();
Class.forName("oracle.jdbc.driver.OracleDriver");
System.out.println("Connecting to a selected database…");
conn = DriverManager.getConnection(DB_URL, USER, PASS);
System.out.println("Connected to database successfully");
System.out.println("Creating table");
stmt = conn.createStatement();
//ARTIST TABLE
String sql = "CREATE TABLE Artist3 " +
"(ArtistID varchar2(5) primary key not NULL, " +
" ArtistName varchar2(25))";
stmt.executeUpdate(sql);
System.out.println("Created table in given database…");
a.setArtistId("abc");
a.setArtistName("ankit");
am.addArtist(a);
System.out.println("\nArtistID="+a.getArtistID()+"\nArtistName="+a.getArtistName());
)catch(SQLException se)(
se.printStackTrace();
)catch(Exception e)(
e.printStackTrace();
)finally(
try(
if(stmt!=null)
conn.close();
)catch(SQLException se)(
)
try(
if(conn!=null)
conn.close();
)catch(SQLException se)(
se.printStackTrace();
)
)
)
)

CreateTable.java Explicação:

1. Primeiro criamos o URL do banco de dados que deve ter o nome do seu computador, bem como o número da porta do banco de dados (idealmente 1521), precedido por JDBC: oracle: thin: @. Em seguida, criamos nome de usuário e senha para transmitir esses atributos durante o tempo de conexão com o banco de dados. É altamente recomendável criptografar esses valores no ambiente de produção.

2. Na classe CreateTable.java, criamos um objeto “am” e “a” das classes ArtistManagementDao.java e Artist.java, respectivamente.

3. Em seguida, tentamos estabelecer nossa conexão seguindo as etapas que aprendemos anteriormente usando uma instrução conn.

4. Em seguida, criamos uma tabela com o nome Artist3 e atualizamos o banco de dados ou o enviamos ao banco de dados usando a instrução execute.

5. Agora, se desejarmos atribuir valores aos atributos, usaremos o objeto que criamos para a classe artist e tomaremos nota, não é essa classe que inserirá o valor no banco de dados; Classe ArtistmanagementDao. Já temos valores armazenados em atributos a partir de agora e veremos na classe do dia como enviar isso para o banco de dados.

6. Finalmente, usamos o objeto "am" de ArtistManagementDao para passar esse objeto "a" ao método addArtist () da classe java ArtistManagementDao.

7. Também tentamos pegar um bloco para capturar qualquer exceção e jogar fora o mesmo.

ArtistManagementDao Explicação:

1. A classe Dao nos ajuda a isolar a camada de aplicativos / negócios da camada de persistência. Geralmente, esse é o banco de dados relacional.

2. Primeiro, criamos o URL do banco de dados que deve ter o nome do seu computador, bem como o número da porta do banco de dados (idealmente 1521), precedido por JDBC: oracle: thin: @. Em seguida, criamos nome de usuário e senha para transmitir esses atributos durante o tempo de conexão com o banco de dados. É altamente recomendável criptografar esses valores no ambiente de produção.

3. Dentro do método addArtist, tentamos estabelecer nossa conexão seguindo as etapas que aprendemos anteriormente usando uma instrução conn.

4. Agora, usamos o método insert para enviar valores dos atributos para o banco de dados.

5. Na próxima instrução, para testar, temos a instrução get para recuperar valores do banco de dados.

6. Também tentamos pegar um bloco para capturar qualquer exceção e lançar o mesmo.

Artigos recomendados

Este foi um guia sobre como conectar o banco de dados em java. Aqui discutimos como conectar o banco de dados em java junto com interfaces e classes usadas para conectar um banco de dados. Você também pode consultar os seguintes artigos para saber mais -

  1. O que é o SQL Server?
  2. O Big Data é um banco de dados?
  3. Como funciona o JavaScript
  4. Perguntas da entrevista multithreading em Java

Categoria: