Spring Boot + JPA實現MySQL批量更新原始碼 - github
這個小的開源專案Github是展示如何使用Spring Boot + JPA實現MySQL批量更新。
關鍵點:
- 在application.properties中設定spring.jpa.properties.hibernate.jdbc.batch_size
- 在application.properties中設定JDBC URL rewriteBatchedStatements=true(MySQL的優化,語句被重寫為單個String緩衝區並在單個請求中傳送)
- 在application.properties中設定JDBC URL cachePrepStmts=true(啟用快取和如果你決定設定prepStmtCacheSize,prepStmtCacheSqlLimit等等也是有用的;沒有這個設定,快取被禁用)
- 在application.properties中設定JDBC URL useServerPrepStmts=true(這樣你切換到伺服器端預處理語句(可能會帶來顯著的效能提升))
- 如果使用cascade all / merge的父子關係(例如,一對多,多對多),則考慮spring.jpa.properties.hibernate.order_updates=true通過訂購更新來設定優化批處理
- 在Hibernate 5之前,我們需要在application.properties中設定一個設定,用於在更新和刪除操作期間啟用版本化實體的批處理(包含@Version隱式樂觀鎖定的實體)。此設定為:spring.jpa.properties.hibernate.jdbc.batch_versioned_data=true。從Hibernate 5開始,預設情況下應該設定true。
父子關係的資料更新輸出案例:
點選標題見原文。
相關文章
- Spring Boot + JPA DataTable原始碼Spring Boot原始碼
- Spring Boot (五)Spring Data JPA 操作 MySQL 8Spring BootMySql
- SpringBootHibernateJPA: Spring Boot+ JPA資訊系統案例原始碼Spring Boot原始碼
- PHP配上MySQL實現批量更新插入PHPMySql
- Spring Boot 整合單機websocket(附github原始碼)Spring BootWebGithub原始碼
- spring boot 配置 JPASpring Boot
- Spring Data JPA原始碼案例Spring原始碼
- Spring Boot中實現規則引擎原始碼教程Spring Boot原始碼
- Spring Data JPA中實現更新插入三種方法Spring
- Spring Boot:整合Spring Data JPASpring Boot
- Spring Boot系列(四):Spring Boot原始碼解析Spring Boot原始碼
- 使用Docker實現Spring Boot Restful Web服務案例原始碼DockerSpring BootRESTWeb原始碼
- 精盡Spring Boot原始碼分析 - @ConfigurationProperties 註解的實現Spring Boot原始碼
- Testing JPA Queries with Spring Boot and @DataJpaTestSpring Boot
- Spring Boot實現DDD的貨運Cargo微服務案例原始碼Spring BootCargo微服務原始碼
- 精盡Spring Boot原始碼分析 - Jar 包的啟動實現Spring Boot原始碼JAR
- 精盡Spring Boot原始碼分析 - 內嵌Tomcat容器的實現Spring Boot原始碼Tomcat
- python+requests 實現介面自動化 [更新 提交原始碼至 GitHub]Python原始碼Github
- java版Spring Cloud+Spring Boot+Mybatis實現工程管理系統原始碼JavaCloudSpring BootMyBatis原始碼
- Spring Boot系列(三):Spring Boot整合Mybatis原始碼解析Spring BootMyBatis原始碼
- Spring Boot 2和JPA入門Spring Boot
- Spring Boot + JPA學習總結Spring Boot
- 精盡Spring Boot原始碼分析 - 支援外部 Tomcat 容器的實現Spring Boot原始碼Tomcat
- Spring Boot 2.0(五):Docker Compose + Spring Boot + Nginx + Mysql 實踐Spring BootDockerNginxMySql
- 使用Kubernetes,Spring Boot和Flyway實現零停機部署原始碼專案Spring Boot原始碼
- 使用Spring Boot + Kafka實現Saga分散式事務模式的原始碼 - vinsguruSpring BootKafka分散式模式原始碼
- MySQL 批量更新、刪除資料shell指令碼MySql指令碼
- java版Spring Cloud + Spring Boot + Mybatis + Uniapp實現電子招標採購系統原始碼JavaCloudSpring BootMyBatisAPP原始碼
- Spring Data JPA 實現聯表查詢Spring
- 《Spring原始碼分析》IOC的實現Spring原始碼
- Spring Boot 2.X 如何快速整合jpa?Spring Boot
- 精盡Spring Boot原始碼分析 - 序言Spring Boot原始碼
- Spring Boot 自動配置 原始碼分析Spring Boot原始碼
- Spring Boot實現Web SocketSpring BootWeb
- java版工程管理系統Spring Cloud+Spring Boot+Mybatis實現工程管理系統原始碼JavaCloudSpring BootMyBatis原始碼
- Spring Boot整合Spring Data JPA進行資料庫操作Spring Boot資料庫
- java工程管理系統原始碼+spring cloud + spring bootJava原始碼CloudSpring Boot
- (github原始碼) 如何利用.NETCore向Azure EventHubs準實時批量傳送資料?Github原始碼NetCore