Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JPA:实体对象未出现在H2控制台中_Java_Spring_Hibernate_Maven_Spring Data Jpa - Fatal编程技术网

Java JPA:实体对象未出现在H2控制台中

Java JPA:实体对象未出现在H2控制台中,java,spring,hibernate,maven,spring-data-jpa,Java,Spring,Hibernate,Maven,Spring Data Jpa,在我的spring应用程序中,我有以下实体: import lombok.Data; @Data @Entity public class Profile { @Id @GeneratedValue Long id; String name; String address; String description; String img; public Profile(String name, String address, Str

在我的spring应用程序中,我有以下实体:

import lombok.Data;

@Data
@Entity

public class Profile {

    @Id
    @GeneratedValue
    Long id;

    String name;
    String address;
    String description;
    String img;

public Profile(String name, String address, String description, String img) {
        this.name = name;
        this.address = address;
        this.description = description;
        this.img = img;
    }
}

然后,存储库是:

@Repository
public interface ProfileRepository extends JpaRepository<Profile,Long> {

}
因此,我希望当我转到h2控制台uri时:

http://localhost:8080/h2-console/login.do?jsessionid=ae6ba7021a23e0ebb4a4844381546e72
它显示与对象
配置文件相关的表

问题是:没有名为Profile的表

那么,为什么我没有配置文件表?

application.properties
为空

下面是我如何连接到H2的

当我运行应用程序时,它会显示:

[2m2017-06-29 10:07:21.106[0;39m [32m INFO[0;39m [35m51392[0;39m [2m---[0;39m [2m[  restartedMain][0;39m [36morg.hibernate.dialect.Dialect           [0;39m [2m:[0;39m HHH000400: Using dialect: org.hibernate.dialect.H2Dialect
[2m2017-06-29 10:07:21.557[0;39m [32m INFO[0;39m [35m51392[0;39m [2m---[0;39m [2m[  restartedMain][0;39m [36morg.hibernate.tool.hbm2ddl.SchemaExport [0;39m [2m:[0;39m HHH000227: Running hbm2ddl schema export
[2m2017-06-29 10:07:21.557[0;39m [32m INFO[0;39m [35m51392[0;39m [2m---[0;39m [2m[  restartedMain][0;39m [36morg.hibernate.tool.hbm2ddl.SchemaExport [0;39m [2m:[0;39m HHH000230: Schema export complete

因此,似乎,应用程序使数据库的模式成为。我说的对吗?

检查包含注释@SpringBootConfiguration的主类是否在包的层次结构的根中

检查包含注释@SpringBootConfiguration的主类是否在包的层次结构的根中

您也可以通过编写创建表,并可以通过将文件放置在src/main/resources位置来加载数据。有很多不同的方法可以做到这一点。我喜欢schema.sql文件,因为它有一些东西可以查看和管理。

您也可以通过编写schema.sql文件来实现这一点,该文件创建表,并可以通过将文件放置在src/main/resources位置来加载数据。有很多不同的方法可以做到这一点。我喜欢schema.sql文件,因为它有一些可以查看和管理的内容。

然后打开“”,需要指定“JDBC URL”。默认情况下(据我所知,您使用默认设置是因为application.properties为空),此值为:

jdbc:h2:mem:testdb

IMHOH2控制台不是开发人员的最佳选择。您可以直接从IDE使用H2-请参阅

然后打开“”,需要指定“JDBC URL”。默认情况下(据我所知,您使用默认设置是因为application.properties为空),此值为:

jdbc:h2:mem:testdb


IMHOH2控制台不是开发人员的最佳选择。您可以直接从IDE使用H2-请参阅

您需要在
application.properties中设置h2配置
写这些行

spring.h2.console.enabled=true
spring.datasource.url=jdbc:h2:mem:testdb --> whatever url you find when open console
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
spring.jpa.hibernate.ddl-auto=create

您需要在
application.properties中设置h2配置
写这些行

spring.h2.console.enabled=true
spring.datasource.url=jdbc:h2:mem:testdb --> whatever url you find when open console
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
spring.jpa.hibernate.ddl-auto=create

因为您需要指示SpringBoot创建模式。请分享你的申请。properties@Salman现在,您可以在
应用程序.properties
:dbname中设置一个db名称。因此,当您尝试从H2控制台连接到db时(
http://localhost:8080/h2-控制台
)您必须使用jdbc:h2:mem:dbname
作为“jdbc URL”。端口9092必须从IDE(或通过SQL工具)连接到H2 DB服务器。因为需要指示SpringBoot创建架构。请分享你的申请。properties@Salman现在,您可以在
应用程序.properties
:dbname中设置一个db名称。因此,当您尝试从H2控制台连接到db时(
http://localhost:8080/h2-控制台
)您必须使用jdbc:h2:mem:dbname
作为“jdbc URL”。端口9092您必须从IDE(或通过SQL工具)连接到H2 DB服务器。我已经用您的提示更新了我的问题,但仍然没有work@Salman现在,您可以在
应用程序.properties
:dbname中设置一个db名称。因此,当您尝试从H2控制台连接到db时(
http://localhost:8080/h2-控制台
)您必须使用jdbc:h2:mem:dbname
作为“jdbc URL”。端口9092您必须从IDE(或通过SQL工具)连接到H2 DB服务器。我已经用您的提示更新了我的问题,但仍然没有work@Salman现在,您可以在
应用程序.properties
:dbname中设置一个db名称。因此,当您尝试从H2控制台连接到db时(
http://localhost:8080/h2-控制台
)您必须使用jdbc:h2:mem:dbname作为“jdbc URL”。端口9092必须从IDE(或通过SQL工具)连接到H2 DB服务器。