概念:
EntityManager:EntityManager是JPA中用于增删改查的接口,它的作用相当于一座桥梁,连接内存中的java对象和数据库的数据存储。可以用getCriteriaBuilder()的方式获取CriteriaBuilder对象。
CriteriaBuilder接口:用于构造标准查询、复合条件、表达式、排序等。可以通过createQuery的方式获取CriteriaQuery实例。
CriteriaQuery接口:代表一个specific的顶层查询对象,它包含着查询的各个部分,比如:select 、from、where、group by、order by。
Root接口:代表Criteria查询的根对象,定义了实体类型,能为将来导航获得想要的结果,它与SQL查询中的FROM子句类似
接下来上代码啦!
1. 注入entitymanager
@PersistenceContext
private EntityManager em;
2. 建立连接,执行查询操作
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery<ADTO> q = cb.createQuery(ADTO.class);
Root<A> root = q.from(A.class);
/*********************表连接**************************/
Join<A, B> b = root.join("b", JoinType.LEFT)

本文介绍了JPA中的EntityManager接口及其在复杂查询中的使用,包括如何通过CriteriaBuilder和CriteriaQuery构建查询,以及Root接口在查询中的作用。通过示例展示了注入EntityManager、建立连接和执行查询的操作步骤,并探讨了WHERE条件和OR条件的拼接,以及JPA的动态更新功能。
最低0.47元/天 解锁文章

4587

被折叠的 条评论
为什么被折叠?



