I set up Spring-boot to work with H2 in-memory database
application.properties
file is in the /config
directory
and it looks like, this file is processed
spring.datasource.url=jdbc:h2:mem:mydb;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect
spring.h2.console.path=/myconsole
spring.h2.console.enabled=true
spring.datasource.initialize=true
spring.datasource.schema=schema.sql
spring.datasource.data=data.sql
This file is processed and the console appears at /myconsole
But the schema.sql
and data.sql
are not processed and db is empty.
I placed schema.sql
and data.sql
files both under /config
and /src/main/resources
.
SQL language instructions are correct and I can populate the table using console input.
Another strange thing is even though i name db as
spring.datasource.url=jdbc:h2:mem:mydb
the spring console loads another database testdb
o.s.j.d.e.EmbeddedDatabaseFactory --- Starting embedded database: url='jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=false', username='sa'
How to load the H2 database correctly?