Comentários
As empresas necessitam de aplicações com mecanismos de armazenamento de dados, sejam simples como leitura de texto (.txt), manipulaçao de arquivos CSV ou integração com banco de dados mais poderoso.
Fonte: Shutterstock.
Deseja ouvir este material?
Áudio disponível no material digital.
Prezado estudante, bem-vindo à segunda seção da quarta e última unidade de estudos sobre Linguagem Orientada a Objetos. Qual empresa de software nunca precisou de uma aplicação que armazenasse os dados de clientes ou fornecedores em um Banco de Dados (BD). A maioria das empresas já precisou e ainda precisa, em algum nível, trabalhar com BD. Nesta seção, abordaremos de forma simplificada o assunto banco de dados, visto que é um tema complexo e extremamente abrangente, sendo necessário um curso para que todo o seu conteúdo seja estudado. Ainda nesta seção, estudaremos como ler arquivos de texto e arquivos CSV em Java, que podem ser entendidos como mecanismos de armazenamento de dados mais simples, porém não menos importantes.
Para a contextualização de sua aprendizagem, lembre-se de que você está trabalhando em um simulador de robô e que seu gestor reviu o seu código e percebeu que você não está utilizando nenhum tipo de banco de dados para armazenar a rota seguida pelo robô.
Diante disso, foi pedido a você que criasse um banco de dados relacional e armazenasse nesse banco as informações da rota seguida pelo robô, bem como que instalasse o pacote do XAMPP, que vem com um software chamado phpMyAdmin, para administrar o BD MySQL ou MariaDB. Com isso, o seu gestor deseja que você integre a sua aplicação em Java ao BD criado e, a partir dessa aplicação, realize as primeiras queries (consultas) com o BD.
Diante do desafio que lhe foi apresentado, como você criará esse Banco de Dados? O que é um banco de dados relacional? O que é o XAMPP? O que é o phpMyAdmin? Como integrar o Java ao MySQL? Como criar as primeiras queries para o BD?
Agora que você foi apresentado à sua nova situação-problema, estude-a e aprenda um pouco sobre o banco de dados MySQL e como integrá-lo à linguagem Java.
E aí, vamos juntos compreender esses conceitos e resolver esse desafio?
Bom estudo!
A presente seção tem por objetivo criar aplicações que interajam com o Banco de Dados (BD) utilizando-se Java. Um BD pode ser pensado como uma forma de armazenar e consultar dados, assim, um simples arquivo pode ser entendido como uma forma primitiva/simples de se manter os dados. Dessa maneira, antes de criarmos uma aplicação com um BD mais poderoso, como o MySQL, mostraremos, em primeiro lugar, como se ler um arquivo de texto (.txt) e, em seguida, manipular um arquivo CSV (Comma-Separated Values ou Valores Separados por Vírgula).
Suponha que desejamos construir uma aplicação que realize a leitura e a impressão de um simples arquivo de texto em Java; o Código 4.7 nos mostra como construir essa aplicação. A execução desse código pressupõe que existe um arquivo chamado “poema.txt” dentro da pasta “dados”.
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class ManipulaArquivosTexto {
public static void main(String[] args) {
try {
File arquivo = new File("dados/poema.txt");
Scanner scanner = new Scanner(arquivo);
while (scanner.hasNextLine()) {
String linha = scanner.nextLine();
System.out.printf("%s%n", linha);
}
} catch (FileNotFoundException ex) {
System.out.printf("Erro abertura do arquivo: %s.%n",
ex.getMessage());
}
}
}
No Código 4.7, nas linhas 1 a 3, temos a importação das classes que manipulam arquivos; já na linha 7, um objeto do tipo File foi criado em que o caminho relativo do arquivo é passado como argumento no construtor da classe; na linha 8, foi criado um objeto do tipo Scanner, responsável pela leitura do arquivo; na linha 9, um loop será iniciado enquanto existir uma próxima linha no arquivo de texto; nas linhas 10 e 11, uma linha inteira é lida e em seguida impressa na tela; por fim, as linhas 13 a 16 realizam o tratamento de exceção do tipo FileNotFoundException, que pode ser lançada em caso de o arquivo não existir.
Caro aluno, existem outras formas de se fazer a leitura de um arquivo em Java, logo, sugerimos que pesquise na internet como fazer isso utilizando a classe BufferedReader e quais as diferenças entre as classes Scanner e BufferedReader.
Outro tipo de arquivo muito utilizado na área de computação é o arquivo CSV, que possui um conjunto de valores separados por vírgula ou algum outro delimitador em sua organização, como o ponto e vírgula, a tabulação (tab), o espaço, entre outros. Um arquivo CSV é um tipo de arquivo de texto especial, que pode ser aberto por qualquer editor de planilha eletrônica, como Excel, Calc, Gnumeric, entre outros.
Experimente abrir um editor de texto simples e digitar o seguinte conteúdo:
Nome, Idade, Profissão, Cidade, Estado
Adriano, 56, Escritor, Rio de Janeiro, Rio de Janeiro
Barbara, 34, Médica, Belo Horizonte, Minas Gerais
João, 18, Estudante, São Paulo, São Paulo
Márcio, 22, Jornalista, São Carlos, São Paulo
Renata, 37, Professora, Florianópolis, Santa Catarina
Feito isso, experimente salvar o arquivo com o nome “dadosclientes.csv” (vamos considerar que os dados digitados representam informações sobre diversos clientes de uma empresa) e, em seguida, abra o conteúdo desse arquivo utilizando algum editor de planilha eletrônica. Após aberto, um conteúdo semelhante à Figura 4.7 será mostrado:
Repare que o conteúdo foi separado em linhas e colunas. As linhas são delimitadas pelas quebras de linhas no arquivo .csv, já as colunas são delimitadas pelas vírgulas (,) colocadas no arquivo. Os arquivos CSV são muito utilizados em cursos da área de computação ou engenharias para auxiliar na organização de diversos tipos de dados.
Como dito anteriormente, outros separadores podem ser utilizados, logo, experimente trocar a vírgula (,) pelo separador ponto e vírgula (;) ou, ainda, pelo separador tabulação; em seguida, abra o conteúdo salvo em um editor de planilha eletrônica e veja o resultado.
Imagine que, agora, desejamos criar um programa em Java que realize a leitura desse arquivo .csv. Após essa leitura, por sua vez, os dados dos clientes devem ser armazenados em uma estrutura de lista e, por fim, impressos na tela. O Código 4.8 nos mostra como tal aplicação pode ser implementada em Java.
import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class ManipulaArquivosCSV {
public final String DELIMITADOR_PONTO_VIRGULA = ";";
public final String DELIMITADOR_VIRGULA = ",";
public static void main(String[] args) {
ManipulaArquivosCSV csv = new ManipulaArquivosCSV();
List<List<String>> registroDados = csv.leitura();
csv.imprimeDados(registroDados);
}
public List<List<String>> leitura() {
List<List<String>> registroDados = new ArrayList<>();
try {
File arquivo = new File("dados/dadosclientes.csv");
Scanner sc = new Scanner(arquivo);
while (sc.hasNextLine()) {
String linha = sc.nextLine();
registroDados.add(getRegistroDaLinha(linha));
}
} catch (FileNotFoundException ex) {
System.out.printf("Erro abertura do arquivo: %s.%n",
ex.getMessage());
System.exit(0);
}
return registroDados;
}
private List<String> getRegistroDaLinha(String linha) {
List<String> listValores = new ArrayList<String>();
try (Scanner linhaScanner = new Scanner(linha)) {
linhaScanner.useDelimiter(DELIMITADOR_PONTO_VIRGULA);
while (linhaScanner.hasNext()) {
listValores.add(linhaScanner.next());
}
}
return listValores;
}
private void imprimeDados(List<List<String>> registroDados){
for (List<String> lista : registroDados){
for (String elemento : lista){
System.out.printf("|%15s ", elemento);
}
System.out.println("|");
}
}
}
Nas linhas 1 a 5, do Código 4.8, temos as importações das classes utilizadas; nas linhas 7 e 8, foram declaradas duas strings que representam os delimitadores que podem ser utilizados; nas linhas 9 a 13, o método main foi criado; já nas linhas 14 a 29, um método que realiza a leitura foi criado. (Algumas linhas desse código são complexas, como a ideia de se criar uma lista de listas, porém a intenção, aqui, é dar uma visão geral de como ler esse tipo de arquivo e armazenar os dados.) Nas linhas 30 a 39, uma linha do arquivo é passada, então, retorna-se uma lista com os campos de dados. Por fim, nas linhas 40 a 47, dá-se a impressão dos dados.
A intenção desse exemplo é apresentar os arquivos CSV, que armazenam os dados em tabelas que são organizadas em linhas e colunas semelhantes a um Banco de Dados, como o MySQL, que será estudado a seguir. Assim, na Figura 4.7, na primeira linha do quadro, temos os atributos de cada coluna, que são: Nome, Idade, Profissão, Cidade e Estado; em breve, aprenderemos como construir esse mesmo exemplo em um BD como o MySQL.
Até aqui, dizemos que arquivos de texto e arquivos CVSs podem ser entendidos como BD. De forma a avançarmos no estudo, vamos, agora, estudar bancos de dados classificados como relacionais, e podemos destacar o MySQL, no entanto, existem diversos outros BD que se encaixam nessa categoria, como: MariaDB, PostgreSQL, Oracle, Microsoft SQL Server, IBM Db2, SQLite, entre outros. Um BD como o MySQL funciona bem para aplicações que necessitam de dados estruturados, como os dados de clientes mostrados no exemplo anterior, que possuía campos como nome, idade, profissão, cidade e estado.
Os bancos de dados, geralmente, utilizam uma linguagem de consulta, e a principal linguagem de consulta utilizada é a SQL (Structured Query Language ou Linguagem de Consulta Estruturada), que é uma linguagem padrão para armazenamento, manipulação e recuperação de dados em BD, que pode ser utilizada para trabalhar com diversos BDs, como: MySQL, MariaDB, Microsoft SQL Server, Oracle, PostgreSQL, entre outros.
Existem quatro operações fundamentais sobre um BD, conhecidas como CRUD (Create, Read, Update, Delete), que indica as operações de criação, consulta, atualização e destruição de dados.
Antes de passarmos para a parte prática do livro, precisamos configurar o nosso ambiente de trabalho. Dessa maneira, é necessário que você instale o MySQL em seu computador; para isso, existem diversas maneiras de proceder, e uma delas é instalar os pacotes XAMPP (Apache + MySQL + PHP + Perl) ou AMPPs (Apache + MySQL + PHP + Perl + Python). O XAMPP pode ser encontrado no site Apache Friends e possui versão de instalação para Windows, Linux e Mac OS X. Já o AMPPs pode ser encontrado no site AMPPS e também possui versão de instalação nesses três sistemas operacionais. Além disso, gostaríamos de ressaltar que esses pacotes têm trocado a versão do BD MySQL pelo MariaDB, e isso ocorreu após a empresa Oracle adquirir o MySQL, assim, caso queira, sinta-se seguro para instalar o MySQL ou, ainda, o MariaDB, que são dois pacotes de BDs que têm uma grande compatibilidade entre si. Adicionalmente, um dos softwares instalados com o XAMPP ou com o AMPPs é o phpMyAdmin.
Gostaríamos de destacar também que essas são apenas sugestões de ferramentas para o trabalho, pois existem muitas outras; assim, caso queira utilizar outras ferramentas, como MySQL Workbench ou Database Workbench, fique à vontade.
O phpMyAdmin é uma ferramenta de software livre, escrita em PHP, que tem por objetivo a administração do BD MySQL ou MariaDB na web. Assim, o phpMyAdmin suporta um conjunto de operações sobre esses bancos, como fazer o gerenciamento de BD, criar tabelas, colunas, estabelecer relações, etc. Essa ferramenta permite que você faça isso por meio da interface gráfica do usuário (GUI) ou, ainda, executando instruções em SQL. Uma versão de utilização de demonstração do phpMyAdmin pode ser acessada em phpMyAdmin.net.; sugerimos que acesse esse endereço e conheça um pouco desse ambiente. Ao acessá-lo, uma tela semelhante à Figura 4.8 deve aparecer.
A Figura 4.8 destaca algumas das principais informações disponíveis do phpMyAdmin. Repare que é possível alterar as versões do BD utilizado, como MySQL e MariaDB (na parte esquerda da tela), e que todos os BDs criados ficam listados à esquerda.
Frente a isso, gostaríamos de convidá-lo a clicar no menu SQL para inserir os primeiros comandos relacionados a um BD. Sendo assim, digite o comando mostrado no Código 4.9.
CREATE DATABASE `bd_empresa`;
Após digitar, clique no botão Executar; esse comando criará um Banco de Dados chamado bd_empresa. Observe a Figura 4.9 para entender melhor os passos que devem ser executados. A partir de agora, todos os comandos SQL que forem pedidos para ser digitados, serão feitos nesse campo. Ao clicar no botão Executar, o comando SQL será processado pelo sistema gerenciador de banco de dados.
Vamos, agora, criar uma tabela nesse banco de dados com os seguintes campos: nome, idade, profissao, cidade, estado e codigo. Para isso, digite o comando mostrado no Código 4.10.
CREATE TABLE `bd_empresa`.`clientes`(
`nome` VARCHAR(100) DEFAULT NULL,
`idade` INT(4) DEFAULT NULL,
`profissao` VARCHAR(100) DEFAULT NULL,
`cidade` VARCHAR(100) DEFAULT NULL,
`estado` VARCHAR(100) DEFAULT NULL,
`codigo` INT(10) NOT NULL AUTO_INCREMENT,
PRIMARY KEY(`codigo`)
) ENGINE = INNODB AUTO_INCREMENT = 28 DEFAULT CHARSET = latin1;
Após clicar em executar, uma tabela chamada clientes será criada dentro do BD bd_empresa.
No MySQL, existem dois tipos principais de dados, que são: numéricos e strings.
Dados String:
Dados Numéricos:
Uma descrição mais completa sobre os tipos de dados em MySQL pode ser encontrada no site W3Schools.
Agora, é preciso popularmos essa tabela, ou seja, inserirmos os clientes. Neste exemplo, vamos inserir cinco clientes, com os mesmos valores da Figura 4.7, a partir do comando mostrado no Código 4.11.
INSERT INTO `bd_empresa`.`clientes`(
`nome`, `idade`, `profissao`, `cidade`, `estado`
)
VALUES(
'Adriano', 56, 'Escritor', 'Rio de Janeiro', 'Rio de Janeiro'
),(
'Barbara', 34, 'Médica', 'Belo Horizonte', 'Minas Gerais'
),(
'João', 18, 'Estudante', 'São Paulo', 'São Paulo'
),(
'Márcio', 22, 'Jornalista', 'São Carlos', 'São Paulo'
),(
'Renata', 37, 'Professora', 'Florianópolis', 'Santa Catarina'
);
Inserido o código, clique em executar e pronto! A tabela clientes contém alguns fregueses, que são: Adriano, Barbara, João, Márcio e Renata. A Figura 4.10 nos mostra como aparecerá a tabela clientes clicando-se no menu Visualizar do phpMyAdmin.
O site w3schools possui um excelente conteúdo sobre a linguagem de consulta SQL. Como dica, utilize esse site para conhecer e compreender melhor a sintaxe dos comandos SQL, pois este livro apresentará apenas um pequeno subconjunto dos comandos SQL existentes.
Até aqui, tivemos uma noção geral de como se criar um BD, criar tabelas e inserir valores nela. No entanto, esse ambiente web deve ser utilizado apenas para pequenos testes, pois ele tem uma série de limitações, logo, é importante que esteja configurado em seu computador local.
Como você já instalou o XAMPP em seu computador, vamos iniciar o phpMyAdmin localmente. Em cada sistema operacional, o procedimento é de um jeito diferente. No computador do autor, o seguinte comando foi executado para se iniciar o XAMPP:
$ sudo /opt/lampp/xampp start
O comando utilizado para parar a execução do XAMPP nesse computador foi:
$ sudo /opt/lampp/xampp stop
Aluno, procure iniciar a execução do XAMPP em seu computador, após isso, o servidor Apache e o MySQL serão iniciados, então, o próximo passo será acessar o ambiente do phpMyAdmin localmente. Para isso, acesse o seu navegador de internet favorito e, então, entre no seguinte endereço:
http://localhost/phpmyadmin
Após o acesso, uma tela semelhante à Figura 4.8 deverá aparecer (a URL será diferente, pois estará rodando localmente). Repita os procedimentos realizados nos Códigos 4.9 a 4.11 para criar um Banco de Dados, uma tabela e popular o BD localmente; feito isso, vamos construir uma aplicação em Java que seja capaz de ler o conteúdo armazenado no BD e inserir novos clientes por meio da própria aplicação Java.
public class Cliente {
private int codigo;
private String nome;
private int idade;
private String profissao;
private String cidade;
private String estado;
public Cliente(int codigo, String nome, int idade,
String profissao, String cidade, String estado) {
this.codigo = codigo;
this.nome = nome;
this.idade = idade;
this.profissao = profissao;
this.cidade = cidade;
this.estado = estado;
}
}
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class ConexaoBD {
private Connection con = null;
private final String jdbcDriver = "com.mysql.cj.jdbc.Driver";
private final String prefixoBD = "jdbc:mysql://";
private final String nomeHost = "localhost";
private final String portaBD = "3306";
private final String nomeBD = "bd_empresa";
private final String usuario = "root";
private final String senha = "";
private String url = null;
public ConexaoBD() {
url = prefixoBD + nomeHost +":"+ portaBD +"/"+ nomeBD;
}
public Connection getConexao() {
try {
if (con == null) {
Class.forName(jdbcDriver);
con=DriverManager.getConnection(url,usuario,senha);
} else if (con.isClosed()) {
con = null;
return getConexao();
}
} catch (ClassNotFoundException ex) {
System.out.println(ex);
} catch (SQLException ex) {
System.out.println(ex);
}
return con;
}
public void fecharConexao() {
if (con != null) {
try {
con.close();
} catch (SQLException ex) {
System.out.println(ex);
}
}
}
}
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class Consultas {
public void listarClientes(Connection conn) {
try {
String sql = "SELECT * FROM `clientes`";
PreparedStatement pStat = conn.prepareStatement(sql);
ResultSet result = pStat.executeQuery();
System.out.println("Resultados da Consulta: ");
System.out.printf("|%8s|%16s|%16s|%16s|%16s|%18s|%n",
"codigo", "nome", "idade", "profissao",
"cidade", "estado");
while (result.next()) {
String nome = result.getString("nome");
String idade = result.getString("idade");
String profissao = result.getString("profissao");
String cidade = result.getString("cidade");
String estado = result.getString("estado");
String codigo = result.getString("codigo");
System.out.printf("|%8s|%16s|%16s|%16s|%16s|%18s|%n",
codigo, nome, idade, profissao,
cidade, estado);
}
} catch (SQLException ex) {
System.out.println(ex);
}
}
public void inserirCliente(Connection conn, Cliente cliente){
try {
Statement st = conn.createStatement();
String sql = "INSERT INTO `clientes` (nome, " +
"idade, profissao, cidade, estado) VALUES ('"+
cliente.getNome() + "', " +
cliente.getIdade() + ", '" +
cliente.getProfissao()+ "', '" +
cliente.getCidade()+ "', '" +
cliente.getEstado()+ "')";
st.executeUpdate(sql);
st.close();
} catch (SQLException ex) {
System.out.println(ex);
}
}
}
import java.sql.Connection;
public class App {
public static void main(String[] args) {
ConexaoBD conBD = new ConexaoBD();
Connection connection = conBD.getConexao();
Consultas consultas = new Consultas();
consultas.listarClientes(connection);
Cliente clienteRita = new Cliente(100, "Rita", 27,
"Dona de casa", "Pelotas", "Rio Grande do Sul");
consultas.inserirCliente(connection, clienteRita);
Cliente clientePedro = new Cliente(101, "Pedro", 53,
"Pedreiro", "Salvador", "Bahia");
consultas.inserirCliente(connection, clientePedro);
consultas.listarClientes(connection);
conBD.fecharConexao();
}
}
O funcionamento do Código 4.12 necessita da inclusão de uma biblioteca chamada mysql-connector-java-X.Y.Z.jar, em que X, Y e Z determinam a versão da biblioteca. Você pode baixar essa biblioteca em MySQL; para isso, nesse site, haverá uma caixa chamada Sistema Operacional (Operating System), então, selecione a opção Plataforma Independente (Platform Independent), baixe o arquivo zip e, por fim, inclua o arquivo .jar que estará dentro da pasta baixada em seu projeto do Código 4.12 e veja o resultado.
Vamos, agora, fazer uma breve explicação do Código 4.12. Não entraremos em muitos detalhes, pois os códigos que manipulam BD são relativamente intuitivos. Nas linhas 1 a 17, temos a modelagem de uma classe Cliente usada apenas para armazenar os dados dos clientes; nas linhas 19 a 21, temos algumas importações utilizadas na classe ConexaoBD; nas linhas 23 a 31, temos alguns atributos utilizados para se estabelecer a conexão com o BD (lembre-se de alterar alguns dos atributos, como nomeBD, usuário e senha, conforme as configurações feitas em seu computador); nas linhas 35 a 50, temos um método que é capaz de estabelecer uma conexão com o BD, e será por meio dessa conexão que serão feitas todas as consultas ao banco; nas linhas 51 a 59, por sua vez, temos um método que fecha a conexão com o BD; já nas linhas 62 a 66, temos algumas importações utilizadas na classe chamada Consultas; nas linhas 68 a 91, temos um método que é capaz de listar os clientes a partir de uma conexão com o BD (gostaríamos de destacar que a consulta foi definida por meio do comando SQL “SELECT * FROM `clientes`”, que retorna todos os campos da tabela clientes); nas linhas 92 a 107, temos um método que insere um novo cliente no BD; por fim, nas linhas 110 a 127, definimos o ponto de entrada da aplicação. Aqui, vale destacarmos que, inicialmente, foi listado o conteúdo armazenado no BD, em seguida, foram inseridos dois novos clientes (a Rita e o Pedro) e, por fim, listado novamente o conteúdo do BD.
Reflita sobre o funcionamento do Código 4.12, especificamente sobre as linhas que definem as consultas SQL, ou seja, as linhas 70 e as linhas 95 a 101. Tente entender que essas são as linhas-chaves para listar e inserir clientes, além disso, reflita sobre como ficaria um código em Java para editar e excluir um cliente do BD.
Caro aluno, tente alterar o código acima para incluir novos clientes. Navegue pela ferramenta phpMyAdmin e veja que o conteúdo inserido por meio da aplicação Java está disponível também nessa ferramenta.
Conforme mencionado anteriormente, existe uma grande quantidade de comandos possíveis sobre um banco de dados. O Quadro 4.5 nos mostra uma síntese dos principais comandos CRUD em SQL suportados pelo MySQL e MariaDB.
Operações |
Exemplo de Comando |
---|---|
Criar BD |
|
Destruir BD |
|
Criar Tabela |
|
Destruir Tabela |
|
Consultar Tudo |
|
Consultar Coluna |
|
Atualizar Campo |
|
Atualizar Coluna |
|
Inserir Nova Linha |
|
Deletar Linha |
|
Experimente testar todos os comandos listados acima para compreender, na prática, o seu funcionamento.
Além dos BDs do tipo relacional, como o MySQL e MariaDB, existem outros BDs que, atualmente, vêm ganhando bastante destaque e são classificados como NoSQL. Existem diversos BDs que se encaixam nessa categoria, e podemos destacar: mongoDB, Cassandra, CouchDB, Redis, HBase, Druid, Riak, entre outros. Diversas empresas no ramo da tecnologia, como Facebook, Amazon, Google e Microsoft, utilizam bancos de dados NoSQL para armazenar grandes volumes de dados. O mongoDB funciona bem para aplicações em que os dados são não estruturados.
O Quadro 4.6 a seguir nos apresenta uma síntese de características presentes nos bancos MySQL e mongoDB.
Características |
MySQL |
mongoDB |
---|---|---|
Ano de Lançamento | 1995 | 2009 |
Código-Fonte | Aberto | Aberto |
Plataforma | Multiplataforma | Multiplataforma |
Empresa Mantenedora | Oracle Corporation | MongoDB Inc. |
Linguagem de Consulta | SQL | NoSQL |
Classificação | BD Relacional | BD Não Relacional |
Escalabilidade | Verticalmente | Horizontalmente |
Esquemas | Estáticos | Dinâmicos |
ACID | Sim | Sim |
Pontos principais | Tabela, Linha e Coluna | Coleção, Documento e Campo |
Caro aluno, acesse os sites dos Bancos de Dados MySQL, MariaDB e mongoDB para conhecê-los melhor, bem como o site do phpMyAdmin, que é um famoso gerenciador de BDs na web. É extremamente importante ficar atento às novas versões e notícias das ferramentas.
Nesta seção, você estudou os conteúdos relacionados à leitura de arquivos de texto, leitura de arquivos CSV, criação de banco de dados MySQL e integração do Java com BD MySQL, bem como analisou diversos exemplos sobre como esses conceitos são implementados na linguagem Java, e todos os códigos aqui mostrados podem ser acessados no GitHub do autor. Na seção seguinte, estudaremos como criar uma aplicação que execute em paralelo por meio da utilização de threads, o que nos fará avançar ainda mais no entendimento da linguagem Java.
ARANTES, J. da S. Livro-POO-Java. 2020. Disponível em: https://bit.ly/3eiUMcF. Acesso em: 8 set. 2020.
CURSO EM VÍDEO. Curso de Banco de Dados MySQL. 2018. Disponível em: https://bit.ly/2FwY2pR. Acesso em: 8 set. 2020.
CURSO EM VÍDEO. Curso MySQL #02a - Instalando o MySQL com WAMP. 2016. Disponível em: https://bit.ly/3hIZW3J. Acesso em: 8 set. 2020.
CURSO EM VÍDEO. Curso MySQL #09 – PHPMyAdmin (Parte 1). 2016. Disponível em: https://bit.ly/32Jku7C. Acesso em: 8 set. 2020.
CURSO EM VÍDEO. Curso MySQL #10 - PHPMyAdmin (Parte 2). 2016. Disponível em: https://bit.ly/3cboHEf. Acesso em: 8 set. 2020.
MARIADB. MariaDB. 2020. Disponível em: https://bit.ly/2RG7kSS. Acesso em: 8 set. 2020.
MONGODB. Mongo DB. 2020. Disponível em: https://bit.ly/35PCgbA. Acesso em: 8 set. 2020.
ORACLE. MySQL. 2020. Disponível em: https://bit.ly/2ZPUrd9. Acesso em: 8 set. 2020.
PHPMYADMIN. PhpMyAdmin. 2020. Disponível em: https://bit.ly/35NKjWf. Acesso em: 8 set. 2020.
W3SCHOOLS. SQL Tutorial. [s.d.]. Disponível em: https://bit.ly/3myPyPG. Acesso em: 8 set. 2020.