java - 为什么Spring Boot中的H2控制台登录后会出现黑屏?

标签 java spring-boot h2

我正在使用带有 H2 数据库的 Spring Boot 1.4.1。我已经按照 reference guide 中的描述启用了 H2 控制台。通过将以下行添加到我的 application.properties 文件:

spring.h2.console.enabled=true
spring.h2.console.path=/h2

当我在 Chrome 53 for Windows 中进入 H2 控制台时,我可以看到登录页面并单击“测试连接”按钮导致“测试成功”:

enter image description here

但是当我点击“连接”按钮时,屏幕变成了完全空白。当我查看源代码时,我看到“抱歉,尚不支持 Lynx”(参见 full source)。同样的事情发生在 Firefox 中。

为什么会这样?我相信我使用的是正确的 JDBC URL,因为 4 个不同的人在 this question 上发布了你应该使用 jdbc:h2:mem:testdb.

最佳答案

根据 blog post ,需要添加一行 如果您的项目中有 spring-boot-starter-security 依赖项,则使用 SecurityConfig 类的 configure 方法,否则您将看到一个空的登录H2控制台后的页面:

http.headers().frameOptions().disable();

我添加了那行,它解决了问题。

或者,可以使用以下行(如 here 所述):

http.headers().frameOptions().sameOrigin();

关于java - 为什么Spring Boot中的H2控制台登录后会出现黑屏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40165915/

相关文章:

sql - 如何在H2数据库SQL查询中使用当前日期

java - Spring 启动组件扫描问题

java - 如何修复 "You have an error in your SQL syntax"JPA持久性

Spring Batch 为 H2 在 SQL 语句中创建语法错误

java - MySQL中的严格自动增量值

java - Spring-Boot/AMQP - 限制处理的消息数量

mysql - 为什么在将 Grails WAR 部署到 Tomcat 时出现 H2 错误

java - 是否有一个好的术语重写 Java 库?

java - 是什么导致了 java.lang.ArrayIndexOutOfBoundsException 以及如何防止它?

java - 可配置资源 - 设计模式