摘要:默認創表引擎為首先創建一個工程編寫一個實體類數據庫生成了對應的表通過命令查看創表語句默認引擎為修改數據庫引擎為過時的方法通過配置文件添加如下配置通過查看源代碼發現起繼承了類并重寫了方法該方法了一個的實例從名字上就能看出端倪源碼中建議的方法
默認創表引擎為MyISAM
首先創建一個springboot 工程, 編寫一個實體類
@Data @Entity public class Employee { @Id private Integer id; private String name; private Long salary; public Employee() { } public Employee(Integer id) { this.id = id; } }
數據庫生成了對應的employee表, 通過show create命令查看創表語句
默認引擎為MyISAM
通過配置文件, 添加如下配置
spring: jpa: database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
通過查看MySQL5InnoDBDialect源代碼發現起繼承了MySQL5Dialect類并重寫了getDefaultMySQLStorageEngine()方法
@Override protected MySQLStorageEngine getDefaultMySQLStorageEngine() { return InnoDBStorageEngine.INSTANCE; }
該方法了一個InnoDBStorageEngine的實例, 從名字上就能看出端倪.
源碼中建議的方法但是
MySQL5InnoDBDialect這個類已經過時了, 從該類的源代碼注釋中可以看到這么一句注釋
Use "hibernate.dialect.storage_engine=innodb" environment variable or JVM system property instead.
但是我設置了之后卻并沒有生效, 有成功的朋友可以告訴我一下方法!
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/76595.html
摘要:想在部署的時候隨應用的啟動而初始化數據腳本,這不就是中的自動生成表結構,聽起來特別簡單,不就是配置的嘛,有什么好說的,是個人都知道。 想在部署的時候隨應用的啟動而初始化數據腳本,這不就是Spring Data Jpa中的自動生成表結構,聽起來特別簡單,不就是配置Hibernate的ddl-auto嘛,有什么好說的,是個人都知道。當初我也是這樣認為,實際操作了一把,雖然表是創建成功了,但...
摘要:我將舉幾個栗子,來詳細的說一下我自己在使用多表復雜查詢的場景和想法。名字手機號這是一個單表的多條件復雜查詢,由于是在幾個屬性中進行篩選,其中的屬性的個數不知道有多少個,所以只需要利用查詢就可以很方便的實現這個需求。 最近工作中由于要求只能用hibernate+jpa 與數據庫進行交互,在簡單查詢中,jpa繼承CrudRepository接口 ,然后利用jpa的方法命名規范進行jpql查...
摘要:的配置后在其他低版本的中也有使用這種配置的,具體根據版本而定。等注解是的相關知識,后面的文章將詳細講述。 ??在我們的實際開發的過程中,無論多復雜的業務邏輯到達持久層都回歸到了增刪改查的基本操作,可能會存在關聯多張表的復雜sql,但是對于單表的增刪改查也是不可避免的,大多數開發人員對于這個簡單而繁瑣的操作都比較煩惱。 ??為了解決這種大量枯燥的簡單數據庫操作,大致的解決該問題的有三種方...
閱讀 2914·2021-10-19 10:09
閱讀 3134·2021-10-09 09:41
閱讀 3380·2021-09-26 09:47
閱讀 2696·2019-08-30 15:56
閱讀 599·2019-08-29 17:04
閱讀 986·2019-08-26 11:58
閱讀 2510·2019-08-26 11:51
閱讀 3361·2019-08-26 11:29