springboot中關(guān)于自動建表,無法更新字段的問題
更新時間:2022年02月25日 09:58:53 作者:Tonels
這篇文章主要介紹了springboot中關(guān)于自動建表,無法更新字段的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
關(guān)于自動建表,無法更新字段問題
Springboot中的配置
jpa: ? ? database-platform: org.hibernate.dialect.MySQL5InnoDBDialect ? ? database: MYSQL ? ? show-sql: true ? ? properties: ? ? ? hibernate.id.new_generator_mappings: true ? ? ? hibernate.cache.use_second_level_cache: false ? ? ? hibernate.cache.use_query_cache: false ? ? ? hibernate.generate_statistics: false ? ? ? hibernate.hbm2ddl.auto: create # 自動生成建表語句 ? ? hibernate: ? ? ? naming: ? ? ? ? physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl # 取消駝峰式命名 hibernate.hbm2ddl.auto: create # 自動生成建表語句
除了create配置,還有以下幾種
create
會自動建表,全部的Model都會新建表create-drop
會新建表,但會以及SessionFactory自動刪除。update
會自動建表,已存在的表無法更新,只會新增新添加的Model,生成表,所以這個注解無法更新已存在的表的字段屬性。validate
會對Model和數(shù)據(jù)庫表進行校驗,字段屬性不一致時,會報錯none,不自動建表,只基于Model的@entity和@Table映射數(shù)據(jù)庫的表(字段可以不對應(yīng))
springboot jpa未自動建表問題記錄
檢查pom是否正確引入對應(yīng)模塊
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency>
檢查application文件配置是否存在錯誤
spring: datasource: url: jdbc:mysql://localhost:3306/dbdbd?useUnicode=true&characterEncoding=utf-8&useSSL=false username: * password: * driver-class-name: com.mysql.jdbc.Driver jpa: hibernate: ddl-auto: update database: mysql show-sql: true
- 檢查實體類是否加入@Entity注解
- 檢查項目目錄結(jié)構(gòu),實體類是否在啟動類所在包或子包目錄下
- 若不在,啟動類上是否加入 @EntityScan("****") 注解
檢查過后,全都沒毛病,項目正常啟動,無報錯,但是可視化工具 navicat 中并沒有生成對應(yīng)的表,百思不得其解,也黔驢技窮了。后來抱著試一試的想法,在mysql安裝目錄bin 下 ,命令行查看數(shù)據(jù)庫表,發(fā)現(xiàn)對應(yīng)的表其實已經(jīng)建立成功,只是navicat沒有顯示出來。
然后就可以愉快的繼續(xù)啦~
至于為什么navicat中沒有顯示建好的表,可能小貓貓壞掉了吧。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot引入Thymeleaf的實現(xiàn)方法
這篇文章主要介紹了SpringBoot引入Thymeleaf的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04spring boot 項目中使用thymeleaf模板的案例分析
這篇文章主要介紹了spring boot 項目中使用thymeleaf模板的案例分析,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-09-09