
Spring Data
fangls0707
这个作者很懒,什么都没留下…
展开
-
Spring Data之JPA开篇
背景目前Spring Boot大行其道,其便捷性给开发人员带来了很大的效率提升。它简化了样板配置,通过关键的说明或者约定就能快速搭建起想要的框架。Spring Boot可适配的组件众多,由于绝大多数应用系统都会同数据库打交道的,这就涉及到Spring Data家族的使用。为什么说是家族呢,因为Spring Data包含JDBC、JPA、LDAP、MongoDB、Redis、Elasticsea...原创 2018-10-25 10:23:11 · 1994 阅读 · 1 评论 -
Spring Data之EntityManagerFactory创建及源码分析
背景在Spring Data之JPA开篇中可以看到Spring Boot的启动日志,先是创建了HikariDataSource,然后紧接着构建了EntityManagerFactory2018-10-25 09:32:20.645 INFO 37469 --- [ main] com.zaxxer.hikari.HikariDataSource : Hikar...原创 2018-11-13 06:30:29 · 28279 阅读 · 0 评论 -
Spring Data之DataSource创建及源码分析
背景俗话说万变不离其宗,代码中对数据库的操作,首先是要获取数据库链接,而Java中最原生的链接方式就是通过DriverManagerprivate static String driver = "org.h2.Driver";private static String url = "jdbc:h2:mem:test";private原创 2018-11-05 10:38:27 · 7746 阅读 · 1 评论 -
Spring Data之EntityManager创建及源码分析
背景上一篇文章介绍了EntityManagerFactory的创建过程,有了EntityManagerFactory接下来就是要获取EntityManager了,但EntityManager的创建不再是通过@Conditional注解,而是使用的@PersistenceContext注解,那么Spring Data是如何识别@PersistenceContext注解,并注入EntityManag...原创 2018-11-19 11:28:03 · 2879 阅读 · 3 评论 -
Spring Data之Repository创建及源码分析
背景在上一篇文章Spring Data之EntityManager创建及源码分析介绍了EntityManager的创建过程,我们使用Spring Data JPA开发时一般是通过自定义一个例如UserRepository的接口,然后继承JpaRepository或者CrudRepository、PagingAndSortingRepository从而获得一系列默认的CURD方法。我们知道接口是...原创 2018-11-21 17:37:19 · 3592 阅读 · 1 评论 -
Spring Data之Slice分页查询
背景项目中我们经常用到分页查询,一般使用的场景有两个前端查询大批量数据时指定page、size分页查询后台定时处理一批数据时,从数据库获取待处理数据,从而避免一次查询太多数据到内存,处理完一批后再查询下一页的数据处理对于场景2也有两种实现方式,Page和Slice,下面就分别介绍Pagepublic interface UserRepository extends JpaR...原创 2018-11-23 16:48:14 · 2857 阅读 · 0 评论 -
Spring Data之@DomainEvents注解
背景在对一个Entity进行save操作时,往往需要触发后续的业务流程,通常采用如下做法public void saveUser(){ User user = ... user = repository.save(user); doSomething(user);}public void action(){ User user = ... saveUser(user); d...原创 2018-11-29 14:19:05 · 6778 阅读 · 1 评论 -
Spring Data之Projection的使用
背景原创 2018-12-10 10:06:33 · 1819 阅读 · 0 评论