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.properties
or 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:
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.properties
or application.yml
no 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 )
- server.port=8009: Especifica a porta na qual o servidor Spring Boot será executado. Neste caso, ele será executado na porta 8009.
- 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.
- 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.
- spring.datasource.driver-class-name=org.h2.Driver: Especifica a classe do driver JDBC para o banco de dados H2.
- 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.
- 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.
- 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.
- 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.properties
or 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