J'ai un projet Spring Boot qui utilise H2. Peu importe ce que je mets mon nom de base de données dans mon fichier application.properties, whey j'appelle la console H2, le nom de la base de données est "test". Je peux me connecter et voir mon schéma, mais je ne peux pas mettre le nom de la base de données à autre chose que "tester". Quel que soit le nom que j'utilise dans le fichier application.properties, le nom sur la console H2 est "test".Définition du nom de la base de données H2 dans le projet Spring Boot
Mon POM est
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example.repository</groupId>
<artifactId>repository</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>repository</name>
<description>repository project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.2.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
Mon fichier application.properties est
spring.datasource.url=jdbc:h2:file:~/test
spring.datasource.username=sa
spring.datasource.password=
spring.datasource.driver-class-name=org.h2.Driver
spring.h2.console.path=/h2-console
spring.h2.console.enabled=true
spring.jpa.show-sql=true
server.port=8081
Désolé, je n'étais pas clair. Peu importe ce que je change cela à, l'URL dans la console de connexion H2 apparaîtra comme "jdbc: h2: ~/test" et les fichiers de base de données seront nommés test.mv.db et test.trace.db. Il semble ignorer la valeur définie dans application.properties. – MikeHT
H2 console c'est juste l'application d'aide, vous pouvez vous connecter à n'importe quelle base de fichier h2 db. Fondamentalement, ne pas hésiter à changer la valeur de l'URL dans la console. Les propriétés de l'application et la console h2 ne sont pas du tout connectées, vous devez donc modifier l'URL manuellement –