2017-05-08 6 views
0

J'essaie de configurer et d'utiliser une base de données intégrée H2 avec Spring Boot. J'utilise le code fourni dans the doc:Visualisation d'une base de données H2 intégrée

@Bean 
public DataSource dataSource() { 
    return new EmbeddedDatabase db = new EmbeddedDatabaseBuilder() 
    .generateUniqueName(true) 
    .setType(H2) 
    .setScriptEncoding("UTF-8") 
    .ignoreFailedDrops(true) 
    // .addScript("schema.sql") Omit, auto-generate 
    .build(); 
} 

L'application fonctionne très bien, je peux créer et récupérer des données, mais je voudrais voir visuellement. J'ai installé le H2 Console Application, mais je ne suis pas sûr comment se connecter à l'instance en mémoire. Je vais à http://localhost:8082 puis, sous l'URL JDBC que je saisis quand je reçois le connection's metadata (j'ai essayé avec des noms générés automatiquement et manuellement), mais l'application H2 Console semble être connectée à un schéma vide. Mes tables n'apparaissent pas là, seulement le schéma d'information, et je ne peux pas non plus SELECT depuis mes tables, elles n'existent tout simplement pas ici.

Que se passe-t-il, à quelle DB me connecte-t-on? Comment puis-je me connecter à ma base de données intégrée?

+0

essayer cette http: // localhost: 8082/h2-console et l'utiliser comme l'URL jdbl pour se connecter jdbc: h2: mem: TestDb – pvpkiran

Répondre

1

Si vous voulez voir vos tables sur la console h2 dans votre application, vous n'avez pas besoin d'installer "Console Application". Vous avez juste besoin de activer pour voir visuellement et également définir votre URL de source de données dans application.properties. Il semble que:

spring.datasource.url=jdbc:h2:mem:nprensen;(or if you have already a ds you should write that url) 
spring.h2.console.enabled=true 
spring.h2.console.path=/console // this is the path for h2 console:localhost:8080/console 
+0

Merci, mais cela ne fonctionne pas . Le printemps ignore juste ceux-là. La console n'est pas accessible et l'URL de la base de données est la même que précédemment. – garci560

+0

@nprensen Pouvez-vous partager votre erreur? La console peut être accessible en situation normale. Peut-être que vous avez fait quelque chose de mal. – fiskra

+0

Il n'y a pas d'erreur, ça ne charge pas – garci560