当前位置: 首页 > 知识库问答 >
问题:

H2 DB为空,未显示任何表格

云骏奇
2023-03-14

我正在尝试连接执行集成测试,为此,我需要H2 db重新创建一些视图。

我正在使用这些属性:

<bean id="internalXaDataSource" class="org.h2.jdbcx.JdbcDataSource">
    <property name="URL" value="jdbc:h2:./target/testing/h2db/#{randomUUID1.toString()}/:testdb;MODE=MSSQLServer"/>
    <property name="description" value="#{randomUUID1.toString()}jdbcXa"/>
    <property name="user" value="sa"/>
    <property name="password" value=""/>
</bean>

<bean id="h2Server" class="org.h2.tools.Server" factory-method="createTcpServer" init-method="start" destroy-method="stop">
    <constructor-arg>
        <array>
            <value>-tcp</value>
            <value>-tcpAllowOthers</value>
            <value>-tcpPort</value>
            <value>8043</value>
        </array>
    </constructor-arg>
</bean>

我尝试了几种不同的连接方式:

然后使用jdbc连接URL连接到它,如:

jdbc:h2:/目标/测试/h2db/#3434-sdfjsd9o3849-df34/:测试数据库;模式=MSSQLServer

我有一个成功的连接,但数据库是空的,没有显示任何表。然而,使用信息模式获取数据库中的模式列表表明testdb数据库就在那里。

我尝试了几个不同的URL,但都没有连接。例如

jdbc:h2:tcp://localhost:8043/testdb:public;LOCK\u模式=0

jdbc: h2:tcp://localhost:8043/: testdb;LOCK_MODE=0

更糟糕的是,无法连接,只能挂起。

<bean id="internalXaDataSource" class="org.h2.jdbcx.JdbcDataSource" depends-on="h2Server">
<property name="URL" value="jdbc:h2:tcp://localhost:8043/mem:public;MODE=MSSQLServer"/>
<property name="description" value="#{randomUUID1.toString()}jdbcXa"/>
<property name="user" value="sa"/>
< property name="password" value=""/>
</bean>

这也只是挂起时,试图连接。

你能解释一下我做错了什么吗?谢谢

共有1个答案

姚德容
2023-03-14

解决了这个问题。暂停了与IntelliJ调试器的运行联调,这样我就可以连接到H2。但是断点设置设置为停止整个JVM。通过在IntelliJ中编辑故障设置以仅暂停线程来修复。然后能够通过上面的第三种方法连接。

 类似资料:
  • 我感谢每个人给我的帮助。我现在的下拉框似乎在变化,但它是空白的。我正在使用的当前编码编辑如下: 当我检查页面上的空下拉元素时,我会得到这个: 警告:scandir(/home/rev/public_html/evo/.../用户/成瘾)[function.scandir]:无法打开dir:在行117的 /home/revo/public_html/evo/codesaveindex.php中没有这

  • 我想用subreport创建一个简单的Jasper报表,但我无法使其工作。 选择提供一个结果(数据库是Oracle),但是子报表在从生成的repport中不可见。但报告的结尾是一个全新的空页。 你能告诉我这个例子有什么问题吗?我尝试了很多东西(子报表中的默认值,当No Data=所有节时,子报表标题中的No detaily设置,以及很多东西,我不记得了),但没有任何帮助。

  • 在Android上,当我为测试Firebase Crashlytics创建自定义错误时,仪表板不会显示任何类型的崩溃(看下面的图片) 在这里,我将“maven{url‘https://maven.fabric.io/public’}”粘贴到buildscript>存储库中,否则我将通过所需的类路径'io.fabric.tools:gradle:1.28.1'粘贴到buildscript>依赖项块中

  • 我有一个HashMap对象,它将存储在NoSQL数据库中。当它有条目时,它看起来像: 如果db中不存在此“input”,我希望响应显示“input”:{},而不是“input”:null。最好的方法是什么? 谢谢

  • 问题内容: 使用JSF1.2,如果我的数据表绑定没有返回任何行,我想显示一条消息。 我怎么做? 还有一些要点-如果表为空,如何完全隐藏表? 谢谢。 问题答案: 利用该属性。它接受一个布尔表达式。您可以借助EL的关键字在表达式内评估数据表的值。如果返回,则不会渲染整个组件(及其子组件)。 对于您感兴趣的情况,以下是一些其他基本示例,说明如何利用属性内的EL功率: 也可以看看: Java EE 7教程

  • 我正在尝试使用 iReport 设计器(两者都具有空数据源)从主报告(report1.jrxml)创建一个子报告(report1_subreport3.jrxml)。主报表详细信息带包含静态文本(“主报表”),子报表元素和子报表在其相应的详细信息带中包含静态文本(“子报表”) 但单击主报表的预览选项卡仅显示静态文本“主报表”,而不显示子报表(“子报表”)的静态文本。 我还浏览了http://com