zhangzhenhuajack / spring-data-jpa-guide

spring-data-jpa-guide,Spring Data JPA实战,SpringDataJpa详解
http://www.jackzhang.cn/spring-data-jpa-guide/
363 stars 157 forks source link

spring-data-jpa-guide

http://www.jackzhang.cn/spring-data-jpa-guide/

Spring Data Jpa 实战

Spring Data JPA入门 实战与进阶

《Spring Data JPA入门 实战与进阶》现货正版包邮 Spring Data JPA:入门、实战与进阶

Spring DATA JPA 扩展阅读

  1. Spring Data JPA 晋级提升篇:复杂场景实战用法与优化

  2. Session与CompletableFuture的使用遇到的一些坑

  3. SpringDataJpa之Hibernate5.0的Entity判断Dirty的过程

  4. SpringDataJPA之Hibernate加载过程

  5. 高级用法学习资料: https://github.com/eugenp/tutorials/tree/master/spring-rest-query-language

    源码说明:

    源码太分散不利于大家查找,所以就给大家放在一起了,可以根据需要自取。

  6. 1.5.9对应的文件夹 是《Spring Data JPA入门到精通》书上对应的源码

  7. 2.0.0对应的文件夹是《Spring Data JPA实战》书上对应的源码

  8. Java并发编程入门到精通是《Java并发编程入门到精通》书上对应的源码

  9. 2.3 对应的是《Spring Data JPA:入门、实战与进阶》书上的源码,预计2021-10 JD能上架出售

  10. 2.3/jpa_base_all_quick_start_rest 经典JPA脚手架项目,快速入门体验JPA能做到什么效果

    欢迎大家一起修改和提交

  11. 提issue或者mr都可以 https://github.com/zhangzhenhuajack/spring-data-jpa-guide

  12. 同时注意issue和wiki的更新 https://github.com/zhangzhenhuajack/spring-data-jpa-guide

    第三方资料阅读指南

    阅读文档顺序:

    1. SpringDataJPA:https://docs.spring.io/spring-data/jpa/docs/current/reference/html/
    2. JPA协议重点:https://docs.oracle.com/javaee/5/tutorial/doc/bnbqa.html
    3. Hibernate文档:https://docs.jboss.org/hibernate/orm/5.2/userguide/html_single/Hibernate_User_Guide.htm
    4. JPA详细协议:https://github.com/eclipse-ee4j/jpa-api
    5. 扩展阅读:

    https://github.com/eugenp/tutorials/tree/master/persistence-modules/spring-data-jpa
    https://github.com/eugenp/tutorials/tree/master/persistence-modules/spring-data-jpa-2
    https://github.com/eugenp/tutorials/tree/master/persistence-modules/spring-data-jpa-3
    https://github.com/eugenp/tutorials/tree/master/persistence-modules/spring-data-jpa-4

    6.Tips:

    https://dzone.com/articles/50-best-performance-practices-for-hibernate-5-amp
    https://dzone.com/articles/best-performance-practices-for-hibernate-5-and-spr
    https://vladmihalcea.com/how-to-implement-equals-and-hashcode-using-the-jpa-entity-identifier/

推荐查阅文档

  1. https://github.com/eclipse-ee4j/jpa-api
  2. https://github.com/eugenp/tutorials/tree/master/persistence-modules/spring-data-jpa
  3. https://docs.spring.io/spring-data/data-jpa/docs/
  4. https://docs.jboss.org/hibernate/orm/5.2/userguide/html_single/Hibernate_User_Guide.html#architecture-overview
  5. https://www.docs4dev.com/docs/zh/hibernate-orm/5.4/reference/hibernate_user_guide.html
  6. https://github.com/zhangzhenhuajack/spring-data-jpa-guide/blob/master/doc/High-Performance.Java.Persistence.pdf
  7. https://github.com/zhangzhenhuajack/spring-data-jpa-guide/blob/master/doc/JavaPersistence2.2.0.pdf
  8. https://github.com/zhangzhenhuajack/spring-data-jpa-guide/blob/master/doc/SpringDataJPA%E5%85%A8%E9%9D%A2%E8%AE%A4%E8%AF%86.key

如果大家觉得有用欢迎请老师喝瓶水或者喝杯咖啡:

常见ISSUE

  1. Spring Data JPA利用@EntityGraph解决N+1的SQL查询问题: @OnetoOne @OneToMany https://github.com/zhangzhenhuajack/spring-data-jpa-guide/issues/36
  2. 禁用spring.jpa.show-sql=true ;原因:https://github.com/zhangzhenhuajack/spring-data-jpa-guide/issues/39
  3. spring data jpa在保存数据的时候,会有缓存问题吗 https://github.com/zhangzhenhuajack/spring-data-jpa-guide/issues/38
  4. 如果在Dirty判断的时候,当前session中缓存对比数据库来讲已经不是最新的。那么JPA会如何进行处理?https://github.com/zhangzhenhuajack/spring-data-jpa-guide/issues/34
  5. 解决save的时候不产生select语句,直接insert,提高批量操作是提升insert的效率 https://github.com/zhangzhenhuajack/spring-data-jpa-guide/issues/31
  6. 返回Dto的projection 利用JPAL返回Dto的返回结果 https://github.com/zhangzhenhuajack/spring-data-jpa-guide/issues/57
  7. JPA实体 某些 字段 映射mysql 字段 JSON类型 查询和保存使用实例 https://github.com/zhangzhenhuajack/spring-data-jpa-guide/issues/58
  8. @Query实现动态查询的方法 https://github.com/zhangzhenhuajack/spring-data-jpa-guide/issues/60

QQ交流群:559701472