Java 如何将H2添加到Wildfly,以便我可以查看数据库中的数据?
在投入生产之前,我计划使用ExampleDS(java:jboss/datasources/ExampleDS)进行java开发。它是Wildfly中的默认数据源,为方便开发人员,使用嵌入式H2数据库进行配置。我需要在开发期间查看这些表中的数据。我在IntelliJ发展。右上角有一个“数据库”选项卡。我以前在这里添加了数据库,我可以看到它们的内容。但是我不知道如何添加ExampleDS数据库 然后我尝试了这种方法: 1) 为H2控制台部署预构建的WAR文件:) 2) 打开URL 3) 使用用户名/password=“sa”登录 然后我可以访问H2控制台。然而,使用默认的JDBCURL登录是不可能的 java:jboss/datasources/examples 我尝试使用名称和密码sa,但它总是说“密码错误” 所以我阅读了关于 它说: 要访问greeter quickstart使用的测试数据库,请输入以下详细信息: JDBC-URL:JDBC:h2:mem:greeter-quickstart;DB_关闭_上的_退出=错误;DB_关闭_延迟=-1 用户名:sa 密码:sa 所以我试过了,我终于可以连接了。但数据库中似乎没有表。文件说: 看一看迎宾应用程序添加的数据。运行以下SQL命令:Java 如何将H2添加到Wildfly,以便我可以查看数据库中的数据?,java,intellij-idea,jboss,wildfly,h2,Java,Intellij Idea,Jboss,Wildfly,H2,在投入生产之前,我计划使用ExampleDS(java:jboss/datasources/ExampleDS)进行java开发。它是Wildfly中的默认数据源,为方便开发人员,使用嵌入式H2数据库进行配置。我需要在开发期间查看这些表中的数据。我在IntelliJ发展。右上角有一个“数据库”选项卡。我以前在这里添加了数据库,我可以看到它们的内容。但是我不知道如何添加ExampleDS数据库 然后我尝试了这种方法: 1) 为H2控制台部署预构建的WAR文件:) 2) 打开URL 3) 使用用户名
select * from users;
我试过了,但得到了信息
未找到表“用户”
我在JPA应用程序中创建的表也找不到。我假设这是因为我的持久性文件指向
java:jboss/datasources/examples
所以我把它改成了
jdbc:h2:mem:greeterquickstart;DB_关闭_上的_退出=错误;DB_关闭_延迟=-1
然后,我在尝试从IntelliJ运行我的JPA应用程序时出错:
“WFLYCTL0412:未安装的必需服务:”=>[“jboss.naming.context.java.jdbc:h2:mem:greeter quickstart;DB_CLOSE_ON_EXIT=FALSE;DB_CLOSE_DELAY=-1”],
“WFLYCTL0180:缺少/不可用依赖项的服务”=>[
有人知道我应该如何将我的表添加到H2数据库中,然后查看这些表中的数据吗?我想你还不清楚其中的一些概念: H2有几个选项可以使用文件作为基础或在内存中创建数据库 内存中的数据不会存储在任何位置,因此,如果您在应用程序中进行如下配置:
jdbc:h2:mem:whatever
jvm在自己的内存中启动一个数据库,该数据库仅对vm可用
如果您想从外部连接,我建议使用嵌入式或服务器模式
Ofc内存中的数据库将为空,您必须在启动时填充它
我经常用它来测试,很酷
检查H2备忘表:
我创建了一个JPA程序,它以自动方式创建表。我知道表是创建的,因为我可以从表中进行JPQL搜索并获得搜索结果(实体对象)。我的程序连接到数据源java:jboss/datasources/ExampleDS。那么表不应该在该数据库中吗?当你说ExampleDS时,你指的是jndi名称吗?是的,我指的是persistence.xml文件中的java:jboss/datasources/ExampleDS。包含jndi数据源的名称,应该在jboss中声明。可能在standalon中E