Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rickicr-collab/projeto-carometro
Projetos de aprendizado com Java
https://github.com/rickicr-collab/projeto-carometro
Last synced: 6 days ago
JSON representation
Projetos de aprendizado com Java
- Host: GitHub
- URL: https://github.com/rickicr-collab/projeto-carometro
- Owner: rickicr-collab
- License: mit
- Created: 2024-11-28T11:48:18.000Z (24 days ago)
- Default Branch: main
- Last Pushed: 2024-12-02T11:08:48.000Z (20 days ago)
- Last Synced: 2024-12-02T12:22:46.597Z (20 days ago)
- Language: Java
- Size: 6.99 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Projeto de Sincronização de Dados com MySQL em Java
Este projeto tem como objetivo realizar a sincronização dinâmica de dados entre uma aplicação Java e um banco de dados MySQL. Ele permite o cadastro, atualização, exclusão e recuperação de dados do banco, com estrutura organizada para garantir a boa gestão dos dados e a validação de campos na aplicação.
## Estrutura do Projeto
Abaixo está a organização dos pacotes e suas respectivas funcionalidades:
## Imagem da Tela do Aplicativo
Abaixo está uma captura de tela do aplicativo em execução. A imagem mostra a interface principal da aplicação.
![Tela do Aplicativo](assets/tela-app.jpg)
### Pacote `model`
Contém a classe `DAO` (Data Access Object), responsável pela conexão com o banco de dados MySQL e pela execução das operações de CRUD (Create, Read, Update, Delete).- **Classe DAO**: Responsável pela conexão com o banco de dados MySQL e execução das consultas para sincronização de dados entre a aplicação e o banco.
### Pacote `util`
Contém a classe `Validador`, com métodos para validar dados inseridos nos campos da aplicação, evitando conflitos e garantindo que os dados estejam no formato correto antes de serem processados.- **Classe Validador**: Oferece funções para validar caracteres em campos específicos, como nome, e-mail, entre outros. A validação garante que dados inconsistentes não sejam enviados para o banco, prevenindo falhas.
### Pacote `view`
Contém a interface principal da aplicação e a classe sobre o projeto.- **Classe Carometro**: Representa a aplicação principal, onde o usuário interage com a interface para cadastrar, atualizar, excluir e visualizar os dados.
- **Classe Sobre**: Contém informações sobre a licença do produto, autor do projeto e o repositório onde o código está armazenado.## Funcionalidades
- **Cadastro de Dados**: O usuário pode cadastrar novos dados, que são sincronizados automaticamente com o banco de dados MySQL.
- **Atualização de Dados**: Dados existentes podem ser recuperados, atualizados e sincronizados com o banco.
- **Exclusão de Dados**: O sistema permite a exclusão de registros no banco de dados, refletindo a mudança na aplicação.- **Validação de Campos**: Antes de inserir ou atualizar os dados, o sistema valida campos específicos, como e-mails e nomes, para garantir que estejam corretos.
- **Gerador de PDF**: Este projeto utiliza a biblioteca externa **iText** para gerar relatórios em PDF com base nas informações armazenadas em uma tabela do banco de dados.
## Como Executar o Projeto
### Pré-requisitos
1. Banco de dados MySQL configurado e instalado no computador.
2. Java 8 ou superior instalado.
3. Dependências do MySQL para Java (JDBC) incluídas no projeto.`Configure o Banco de Dados`
1. Nome do Banco de Dados O banco de dados utilizado neste projeto é o bdcarometro, mas você pode criar o seu próprio banco de dados com o nome que preferir.
2. No código-fonte Java, dentro da classe DAO.java, você deve configurar a URL do banco de dados, o usuário e a senha para a conexão.
3. O nome do banco de dados é bdcarometro, mas você pode alterar o nome do banco conforme sua preferência. A senha do banco está configurada como vazia no código, mas você deve definir sua própria senha ao instalar e configurar o MySQL.### Passos para Execução
1. **Clone o Repositório**:
```bash
git clone https://github.com/seu-usuario/seu-repositorio.git###Estruturas das Tabelas no Banco de Dados MySQL
O banco de dados MySQL e tabela principal para o armazenamento dos dados:
```sql
CREATE DATABASE bdcarometro;CREATE TABLE alunos (
ra INT PRIMARY KEY AUTO_INCREMENT,
nome VARCHAR(30) NOT NULL,
foto LONGBLOB NOT NULL
);/Projeto-Carometro
│
├── /src
│ ├── /model
│ │ └── DAO.java # Classe responsável pela conexão com o banco de dados MySQL e execução de operações CRUD
│ │
│ ├── /util
│ │ └── Validador.java # Classe contendo métodos para validação de campos específicos
│ │
│ └── /view
│ ├── Carometro.java # Classe representando a aplicação principal, interface de interação com o usuário
│ └── Sobre.java # Classe com informações sobre o projeto, autor e licença
│
└── README.md # Arquivo contendo informações sobre o projeto