Este projeto foi desenvolvido através de um trabalho sobre persistência de dados utilizando Hibernate e MySQL. A aplicação modela uma clínica médica com as seguintes entidades: Paciente, Medico e Tratamento. Por escolha minha, fiz a implementação de uma classe genérica que trabalha com as operações CRUD com qualquer classe entidade e com funções que podem trabalhar conforme o query que a pessoa quiser.
- Cadastro de pacientes e médicos.
- Registro de tratamentos, associando pacientes a médicos.
- Atualização e exclusão de registros.
- Consulta de dados armazenados.
- Java: Linguagem de programação principal.
- Hibernate: Framework para mapeamento objeto-relacional (ORM).
- MySQL: SGBD relacional.
- JPA: Para abstração de persistência.
O projeto segue uma arquitetura em camadas, com as camadas de DAO e Service separadas.
- dao: Contém a classe
GenericDAOpara operações CRUD genéricas e DAOs específicos para cada entidade. - entity: Contém as classes de entidade:
Paciente,Medico,Tratamento. - service: Contém a lógica de negócios.
- util: Contém utilitários para leitura de dados de entrada e outras funções auxiliares.
- Controller: Contém as funções que trabalham com a visualização no terminal
Este é o diagrama de classes que foi utilizado no projeto:
- Clone o repositório:
git clone https://github.com/JersonVitor/Hibernate-Java.git- Atualize os dados do Banco de Dados nessas linhas aqui.
<!-- Database Connection Settings -->
<property name="hibernate.connection.driver_class">com.mysql.cj.jdbc.Driver</property>
<property name="hibernate.connection.url"></property>
<property name="hibernate.connection.username"></property>
<property name="hibernate.connection.password"></property>-
Verifique a versão do Java, esse projeto está utilizando a versão 20
-
Baixe as dependencias que estão no arquivo
pom.xml -
Rode o projeto
