我有一个包含 4 个表的数据库:
company,staff,department,project
公司.java
@Entity
@Table(name = "company")
@SqlResultSetMapping(name = "COMPANY", entities =
{
@EntityResult(entityClass = Company.class),
@EntityResult(entityClass = Staff.class)
})
...
获取实体.java
EntityManagerFactory emf = Persistence.createEntityManagerFactory("GetEntityPU");
EntityManager em = emf.createEntityManager();
String query = "SELECT *
FROM company c
JOIN staff s
ON c.ID = s.companyID";
Query q = em.createNativeQuery(query, "COMPANY");
List<Object[]> list = q.getResultList();
从上面的代码中,我可以从公司实体和员工实体中检索所有数据。
现在我想从任何 2 个表中检索所有数据:
可能是公司、员工表的所有数据或员工、部门表的所有数据
我应该如何控制查询中的每个实体?
我真的不知道该怎么做。
欢迎任何想法或有用的源链接。