Spring Boot中Java Model类无法在PostgreSQL自动创建表问题
Spring Boot PostgreSQL 实体对应表未生成问题
程序运行无报错,已为Student实体添加所有必要注解,PostgreSQL连接配置也确认正确,但数据库中始终没有生成对应的表。操作步骤完全参照某视频教程的1:11:25-1:16:51时段,使用Eclipse IDE,怀疑问题出在IDE上。
Student实体类代码
package ru.kors.springstudents.model; import jakarta.persistence.*; import lombok.*; import java.time.LocalDate; import java.time.Period; @Data @Entity @Table(name = "students") public class Student { @Id @GeneratedValue private Long id; private String firstName; private String lastName; private LocalDate dateOfBirth; @Column(unique = true) private String email; @Transient private int age; public int getAge() { return Period.between(dateOfBirth, LocalDate.now()).getYears(); } }
更新后的application.yaml配置
spring: datasource: url: jdbc:postgresql://localhost:5432/SpringStudent101 username: postgres password: 4221 driver-class-name: org.postgresql.Driver jpa: hibernate: ddl-auto: create-drop database-platform: org.hibernate.dialect.PostgreSQLDialect show-sql: true properties: hibernate: format_sql: true
pom.xml文件内容
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="https://maven.apache.org/POM/4.0.0" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>3.0.11</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>ru.kors</groupId> <artifactId>springstudents</artifactId> <version>0.0.1-SNAPSHOT</version> <name>springstudents</name> <description>Demo project for Spring Boot</description> <properties> <java.version>17</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.30</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>org.postgresql</groupId> <artifactId>postgresql</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
数据库的Tables目录下本应出现Student对应的表,但目前未生成,可查看截图:
内容的提问来源于stack exchange,提问作者black box
相关产品推荐
相关产品推荐

