springboot使用jpa无法创建数据库表的问题
这两天在B站跟一个up学习开发一个个人博客网站,在使用jpa通过@Entity + @Table自动创建数据库表的时候处出了问题。
先看看实体类代码
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bRQJLOTG-1578242649091)(C:\Users\小马林\AppData\Roaming\Typora\typora-user-images\image-20200106001606029.png)]
注意要想springboot能够成功创建表条件如下
- 实体类必须在主程序类所在的包结构的下一级子包下
- 实体类必须用@Entitu注解标识,注意@Entity必须是javax.persistence.*该包下的注解
- 在配置文件下配置jpa.hibernate.ddl-auto: update
上面是基本的要求,必须满足。
现在来看看我的配置类,我使用的yml文件进行配置
从这里你可以看出创建表的基本要求都是做到了,可是我启动程序后数据库还是空空如也。
创建表失败的原因是因为我犯了一个很低级的错误,这也是我认为yml所存在的缺点之一。
jpa是spring属性下的子属性,而我在上面的配置写法,就把jpa写成datasource的子属性<