我有像这样的桌子
Person{id, name, dob}
employee{id, company_name, joining_date}.
我需要employee_report
根据公共列 ID 加入这两个表。但我会得到
employee_report{id,name, dob, company_name, joining_date}
但是如何映射这个employee_report?它正在查询数据库但收到错误:未知实体?
如何解决这个问题。
我有像这样的桌子
Person{id, name, dob}
employee{id, company_name, joining_date}.
我需要employee_report
根据公共列 ID 加入这两个表。但我会得到
employee_report{id,name, dob, company_name, joining_date}
但是如何映射这个employee_report?它正在查询数据库但收到错误:未知实体?
如何解决这个问题。
如果实体之间没有关联,您可以使用 HQL 进行的唯一联接是使用 ID 上的 where 子句的内部联接:
select person.id, person.name, person.dob, employee.companyName, employee.joiningDate
from Person person, Employee employee
where person.id = employee.id
这样的查询返回一个List<Object[]>
,每个Object[]
包含您选择的 5 个元素。
假设您已经创建了一个视图employee_report。
您必须在 Java 代码中创建相应的实体(例如:EmployeeReport),并使用 Hibernate 映射它。之后,您可以从数据库中获取员工报告。
创建视图,听起来令人信服。这就是我在项目中遇到的这种要求所做的。