Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Wiki Wiki
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • MeditAmamente
  • WikiWiki
  • Wiki
  • Database

Database · Changes

Page history
Update Database authored Sep 12, 2024 by Nicolas Kics Marques's avatar Nicolas Kics Marques
Hide whitespace changes
Inline Side-by-side
Database.md
View page @ 9747745a
......@@ -39,65 +39,3 @@ Abaixo está apresentado o diagrama de banco de dados desenvolvido pelos alunos
## Configuração do Banco com projeto Spring
A configuração é apresentada em outra página que é a de [Configuração](configuração).
## Configuração do Projeto Spring
- **Adicionando dependências:** Dependências, quando combinadas, asseguram que a aplicação possa interagir com o banco de dados MySQL de maneira eficiente e robusta. A dependência `spring-boot-starter-data-jpa` fornece uma camada de abstração que simplifica a manipulação de dados, permitindo o uso de JPA e Hibernate para mapear objetos Java para tabelas do banco de dados e gerenciar operações de persistência de maneira automatizada. Isso não só reduz o esforço necessário para escrever código de acesso a dados, como também melhora a manutenção e a escalabilidade da aplicação. Por sua vez, a dependência `mysql-connector-java` estabelece a conexão necessária entre a aplicação e o banco de dados MySQL, garantindo que as operações de leitura e escrita sejam realizadas de forma confiável e eficiente. Juntas, essas dependências permitem que a aplicação aproveite a automação, a flexibilidade e o desempenho do Spring Data JPA para gerenciar dados de forma eficaz.
![pom.xml_Springboot](uploads/4fb2689bde9e9a81595794e6e7d1d79b/pom.xml_Springboot.png)
![pom.xml_MySQL](uploads/7e2e0f4db68f001ed7ca7bee6bc62eb2/pom.xml_MySQL.png)
- **Definindo a configuração do banco de dados:** O arquivo `application.properties` define a configuração do banco de dados no projeto Java Spring. Ele especifica a URL de conexão com o MySQL (`spring.datasource.url`), o nome de usuário (`spring.datasource.username`) e a senha (`spring.datasource.password`). A propriedade `spring.jpa.hibernate.ddl-auto` controla como o Hibernate gerencia o esquema do banco de dados, sendo configurado para atualizar o esquema automaticamente. Além disso, `spring.jpa.show-sql=true` faz com que as consultas SQL executadas sejam exibidas no console, ajudando na depuração.
-
![Application_Properties](uploads/42c1e496cfd317939d6a9c2607b0b55d/Application_Properties.png)
- **Criando Entidades:** A criação de entidades é realizada através da definição de classes Java que representam tabelas no banco de dados. Cada classe é anotada com a anotação `@Entity`, que indica ao Hibernate (ou outro provedor JPA) que a classe deve ser mapeada para uma tabela no banco de dados. As propriedades da classe correspondem às colunas da tabela, e são anotadas com `@Column` para especificar detalhes adicionais, como o nome da coluna e se ela pode ser nula. A chave primária é definida com a anotação `@Id`, e geralmente é gerada automaticamente usando a estratégia `@GeneratedValue`. Essas entidades são então usadas para criar, ler, atualizar e excluir registros no banco de dados de forma orientada a objetos, facilitando a manipulação dos dados e a manutenção do código.
- **Definindo a Interfaces de Repositório**
A classe Interfaces de Repositório em um projeto Java Spring com JPA atua como um intermediário entre a aplicação e o banco de dados, facilitando o acesso e a manipulação dos dados. Essas interfaces são definidas como extensões da interface `JpaRepository` ou `CrudRepository`, fornecidas pelo Spring Data JPA. Ao estender `JpaRepository`, a interface ganha métodos pré-definidos para operações básicas de CRUD (Create, Read, Update, Delete), como `save()`, `findById()`, `findAll()`, e `deleteById()`. Isso elimina a necessidade de implementar manualmente as operações de acesso a dados e permite que a aplicação se concentre na lógica de negócio.
## Parâmetro JDBC URL
- O parâmetro `jdbc.url` é uma configuração crucial para estabelecer a conexão entre uma aplicação e um banco de dados relacional. Ele especifica o endereço do banco de dados que a aplicação deve acessar, incluindo detalhes como o protocolo, o endereço do servidor, a porta e o nome do banco de dados. O formato básico do `jdbc.url` é:
![Modelo_jdbc_url](uploads/a8d57650a30d9a680cb8c657679a9630/Modelo_jdbc_url.png)
- Em nosso projeto, o JDBC URL é:
![jdbc.url](uploads/58c4e4568445d41a3ae71fb401ac9b67/jdbc.url.png)
- A seguir temos as definições de cada parte que compõe a URL.
- **Protocolo (`jdbc:`)**:
- Indica que o Java Database Connectivity (JDBC) está sendo usado para a conexão.
- **Tipo de Banco de Dados (`[database_type]`)**:
- Define o tipo de banco de dados. Por exemplo, para MySQL é `mysql`, para PostgreSQL é `postgresql`, etc.
- **Endereço do Servidor (`[host]`)**:
- O endereço IP ou o nome do host onde o servidor de banco de dados está localizado. Para um banco de dados local, pode ser `localhost`.
- **Porta (`[port]`)**:
- O número da porta na qual o banco de dados está ouvindo as conexões. A porta padrão para MySQL, por exemplo, é `3306`.
- **Nome do Banco de Dados (`[database_name]`)**:
- O nome específico do banco de dados ao qual você deseja se conectar.
## Como logar no banco de dados
### **Usando MySQL Workbench**
1. **Abrir MySQL Workbench**: Inicie o MySQL Workbench no seu computador.
2. **Criar uma Nova Conexão**:
- Clique em `+` ao lado de "MySQL Connections" para criar uma nova conexão.
- Na tela de configuração, preencha as informações:
- **Connection Name**: Nome da conexão (pode ser qualquer nome).
- **Hostname**: O endereço do servidor MySQL, geralmente `localhost` para uma instalação local.
- **Port**: A porta do MySQL, que geralmente é `3306`.
- **Username**: O nome de usuário do MySQL (por exemplo, `root`).
- **Password**: A senha para o usuário fornecido.
- Clique em `Test Connection` para verificar se as configurações estão corretas.
- Clique em `OK` para salvar a conexão.
3. **Conectar-se ao Banco de Dados**:
- Clique duas vezes na nova conexão que você criou para se conectar ao banco de dados.
## Considerações Adicionais
- **Senhas e Dados Sensíveis:** Use variáveis de ambiente para armazenar senhas e dados sensíveis.
\ No newline at end of file
Clone repository
  • Arquitetura
  • Configuração
  • Database
  • Escopo
  • Gerência
  • Infraestrutura
  • Mockups
  • Processo
  • Testes
  • Home