由于以下配置,我想在Web浏览器中查看Spring启动的H2数据库的内容:
<jdbc:embedded-database id="dataSource" type="H2" /> <jdbc:initialize-database data-source="dataSource"> <jdbc:script location="classpath:db/populateDB.sql"/> </jdbc:initialize-database>
我在日志中搜索了JDBC URL:
DEBUG o.s.j.d.SimpleDriverDataSource - Creating new JDBC Driver Connection to [jdbc:h2:mem:dataSource;DB_CLOSE_DELAY=-1]
但是不幸的是,数据库仍然是空的,但是由于populateDB.sql脚本,它不应该是空的。
任何想法?
谢谢!
只需将以下内容添加到您的配置中即可。
<bean id="h2Server" class="org.h2.tools.Server" factory-method="createTcpServer" init-method="start" destroy-method="stop" depends-on="h2WebServer"> <constructor-arg value="-tcp,-tcpAllowOthers,-tcpPort,9092"/> </bean> <bean id="h2WebServer" class="org.h2.tools.Server" factory-method="createWebServer" init-method="start" destroy-method="stop"> <constructor-arg value="-web,-webAllowOthers,-webPort,8082"/> </bean>
这将在与嵌入式数据库相同的JVM中启动H2 Web控制台和TCP服务器,以便您可以使用Web浏览器访问端口8082(将URL输入jdbc:h2:mem:dataSource),或使用外部SQL客户端访问端口9092。例如SQuirreLSQL并查看相同的数据。