image

Acesse bootcamps ilimitados e +650 cursos

50
%OFF
Article image
José Filho
José Filho30/10/2024 11:19
Compartilhe

O poder do DB H@ para desenvolvimento inicial de upa API com Spring Boot

    Entendendo o que é o Banco de Dados H2

    O banco de dados H2 é um banco de dados na memória, leve e de código aberto, comumente usado para fins de desenvolvimento e teste e desenvolvimentos de API no geral com framework Spring Boot uma ferramenta poderosa para os desenvolvedores Java.

    Vamos Analisaremos as propriedades de configuração necessárias e explicaremos sua importância na configuração do banco de dados H2 em um projeto Spring Boot.

    Configurando o banco de dados H2:

    Para começar, precisamos adicionar as propriedades de configuração necessárias ao nosso aplicativo Spring Boot. Essa configuração se dar e dois momentos nos docs de dependência e nos doc de application.propertiesor application.yml.

    A dependência pode ser adiciona facilmente por no momento da criação do projeto lá no nosso Spring Initializr na guia de dependência justamente das suas necessárias:

    image

    E comum justamente ao uso da do H2 o uso do JPA que facilita incrivelmente nossa integração com bancos de dados(fica a dica) Spring Cloud

    A partir de ai basta apenas configuramos a propriedade especificando as principais informações do h2 definindo suas propriedades e comportamento ao o projeto ser iniciado:

    Abra o arquivo application.propertiesor application.ymlno seu projeto e adicione as seguintes propriedades:

    application.properties

    server.port = 8009 
    spring.h2.console.enabled = true 
    spring.datasource.url =jdbc:h2:mem:testdb 
    spring.datasource.driver-class-name =org.h2.Driver 
    spring.datasource.username =sa 
    spring.datasource.password =admin 
    spring.jpa.database-platform =org.hibernate.dialect.H2Dialect 
    spring.jpa.hibernate.ddl-auto =update 
    spring.jpa.show-sql = true
    

    application.yml

    server:
    port: 8009
    
    
    spring:
    h2:
      console:
        enabled: true
    
    
    datasource:
      url: jdbc:h2:mem:testdb
      driver-class-name: org.h2.Driver
      username: sa
      password: admin
    
    
    jpa:
      database-platform: org.hibernate.dialect.H2Dialect
      hibernate:
        ddl-auto: update
      show-sql: true
    

    Agora vamos entender melhor cada propriedade tomando a versão application.properties:

    (as explicações abaixo se aplica ao o application.yml )

    1. server.port=8009: Especifica a porta na qual o servidor Spring Boot será executado. Neste caso, ele será executado na porta 8009.
    2. spring.h2.console.enabled=true: Habilita o console do banco de dados H2, que fornece uma interface baseada na web para interagir com o banco de dados H2.
    3. spring.datasource.url=jdbc:h2:mem:testdb: Define a URL JDBC para o banco de dados H2. Neste caso, estamos usando um banco de dados na memória com o nome "testdb". Você pode modificar a URL com base em seus requisitos, como usar um banco de dados baseado em arquivo ou especificar um nome diferente.
    4. spring.datasource.driver-class-name=org.h2.Driver: Especifica a classe do driver JDBC para o banco de dados H2.
    5. spring.datasource.username=sae spring.datasource.password=admin: Define o nome de usuário e a senha para conexão ao banco de dados H2. Neste caso, estamos usando o nome de usuário padrão "sa" e a senha "admin". É recomendável alterar as credenciais para uso em produção.
    6. spring.jpa.database-platform=org.hibernate.dialect.H2Dialect: Define o dialeto do Hibernate para o banco de dados H2. Esta propriedade garante que o Hibernate gere instruções SQL apropriadas compatíveis com H2.
    7. spring.jpa.hibernate.ddl-auto=update: Configura o Hibernate para atualizar automaticamente o esquema do banco de dados com base nas classes de entidade. Ele é definido como "update" para executar as alterações de esquema necessárias sem descartar dados existentes.
    8. spring.jpa.show-sql=true: Habilita a impressão de instruções SQL executadas pelo Hibernate no console. Esta propriedade ajuda na depuração e no entendimento das consultas SQL subjacentes.

    Desse modo se seguiu o passo a a passo o banco H2 vai esta funcionado corretamente, e antes de finalizarmos separei uma dica bônus, este banco também possui uma versão com interface para facilitar ainda mais o que já é simples.

    Juntos as propriedades pode se adicionar mais duas e habilitar essas interface, bem simples lá no doc de propriedade application.propertiesor application.yml

    spring.h2.console.enabled=true
    spring.h2.console.path=/h2-console
    
    h2:
      console:
        enabled: true
        path: /h2-console
        settings:
          web-allow-others: true
    

    Com essas configurações, você poderá acessar o H2 Console na URL "http://localhost:8009/h2-console". Basta rodar sua aplicação e acessar esse endereço no navegador.

    Conclusão e Considerações finais:

    Lembre-se de proteger o console do banco de dados H2 e atualizar as credenciais para implantações de produção para garantir a segurança dos dados. Com o banco de dados H2 configurado corretamente, você pode aproveitar seus recursos e executar operações de banco de dados perfeitamente dentro do seu aplicativo Spring Boot.

    Agora sim finalizamos, Espero poder te ajudo de alguma forma, não se limite apenas a esse artigo e busque explorar outras possibilidades e configurações, ótimos estudo ate a próxima !

    @GitHub: https://github.com/JoseGoncalvess

    @Linkedin: https://www.linkedin.com/in/jgoncalvessf

    Compartilhe
    Comentários (0)