我在一个程序包uniroma3.siw.model
中创建了一些类,而主要的则在另一个程序包uniroma3.siw.progetto
中。项目会编译,不会产生任何错误,但是不会在MySQL Workbench表中创建表。
这是我创建的实体之一:
@Entity
public class Admin {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private Long id;
@Column(nullable=false)
private String nome;
}
我没有更改主键,这是application.proprieties
:
spring.jpa.hibernate.ddl-auto=create
spring.datasource.url=jdbc:mysql://localhost:3306/progetto?
serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=****
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
答案 0 :(得分:0)
有一些可能的原因:
Admin
类与您的应用程序不在同一个子包中。解决此问题的方法是用@EntityScan( basePackages = {"uniroma3.siw.model"} )
application.properties
文件不在正确的位置。它应该位于src/main/resources
答案 1 :(得分:0)
我找到了解决方案!这很容易。
@EntityScan( basePackages = {"it.uniroma3.siw.model"} )
在@SpringBootApplication之后将这行添加到主行就足够了