Para los que no quieran escribir
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>1.4.200</version>
<scope>runtime</scope>
</dependency>
Introducción a Spring Boot
¿Qué es Spring Boot?
Características principales de Spring Boot
Instalación de entorno de desarrollo: Windows
Instalación de entorno de desarrollo: macOS
Instalación de entorno de desarrollo: Ubuntu
Dependencias en Spring Boot
¿Qué es una dependencia?
Inversión de control y el patrón de inyección de dependencias
Autoconfiguration y runtime
Anotaciones para indicar dependencias en Spring Boot
Creación de proyecto bajo arquitectura de dependencias
Inyección de dependencia "Component"
Ejemplo de creación de dependencia propia
Configuración general de Spring Boot
Cambio de puerto y path
Uso de properties y valores
Uso de properties con ejemplo de generación de POJO
Qué son los logs y cómo usarlos
JPA con Spring y Spring Data
Modelado de entidades con JPA
Configuración de datasource con properties y classes
Registro en base de datos con JpaRepository
Uso de JPQL en anotación query
Uso de anotación value para apuntar a properties
Obtención de información usando Query methods
Uso de Query methods con Or, and, OrderBy, Between, Sort
Uso de JPQL con named parameters
Uso de anotación transactional
Rollback con la anotación transactional
REST con Spring Boot
CRUD bajo arquitectura REST
Métodos CREATE, UPDATE y DELETE
Probando la API REST
Pagination con Spring Boot
Conclusiones
Sigue aprendiendo Spring Boot
Aún no tienes acceso a esta clase
Crea una cuenta y continúa viendo este curso
Aportes 11
Preguntas 7
Para los que no quieran escribir
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>1.4.200</version>
<scope>runtime</scope>
</dependency>
Por si lo necesitan amigos
spring.datasource.url=jdbc:h2:mem:testdb
spring.datasource.driver-class-name=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
spring.jpa.database-platform=org.hibernate.dialect.h2Dialect
For Gradle
implementation ‘com.h2database:h2:1.4.200’
Para comentar el código, selecciona el código a comentar y presiona ctrl + /
Hola si usan el nombre user se presenta un conflicto debido a que ese nombre al parecer es una palabra reservada en la db, recomiendo:
@Table(name = "users")
Hola, nueva versión sin vulnerabilidades
https://mvnrepository.com/artifact/com.h2database/h2/2.0.206
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>2.0.206</version>
<scope>test</scope>
</dependency>
Les comparto mi implementación del DataSource
@Bean
public DataSource dataSource(){
return DataSourceBuilder.create()
.driverClassName("org.h2.Driver")
.url("jdbc:h2:mem:testdb")
.username("sa")
.password("")
.build();
}
No explica nada en la clase. no se que ventajas tiene emplear la configuracion que hizo en properties frente a lo que ya se vio. es una clase de spring boot pero no se explica el por que de nada, me gusta que al final de la clase diga lo que se vio, es una buena practica pienso yo. lastima que es el unico momento donde me entero un poco que es lo que acaba de pasar en la clase, porque hasta ahi es solo copiar y pegar, no se entiende que cosa hace que
en la configuracion por application.properties, en la propiedad ‘database-pllatfor’ el nombre de la clase debe iniciar el mayuscula porque si no marca error, queda asi:
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect
spring.datasource.url=jdbc:h2:mem_testdb
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=sa
spring.jpa.database-platfotm=org.hibernate.dialect.h2Dialect
@Bean
public DataSource dataSource() {
DataSourceBuilder dataSourceBuilder = DataSourceBuilder.create();
dataSourceBuilder.driverClassName("org.h2.Driver");
dataSourceBuilder.url("jdbc:h1:mem:test:db");
dataSourceBuilder.username("sa");
dataSourceBuilder.password("sa");
return dataSourceBuilder.build();
}```
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>1.4.200</version>
<scope>runtime</scope>
</dependency>
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.