我正在使用Spring和Hibernate和MySQL开发应用程序。我是Hibernate的新手,做了基本任务…
现在,我需要在选择查询中应用联接,以使用注释从多个表中获取数据。我已经搜寻过,但仍然不知道…
这是我的数据库表和bean类:
Table 1: 'employee_info' ( id, empid, empname, doj and jobtitle ) Table 2: 'employee_login' ( username, password, status and empid )
我的bean类是:
EmployeeInfoForm.java
@Entity() @Table(name = "employee_info") public class EmployeeInfoForm { @Id @GeneratedValue @Column(name = "id", unique = true, nullable = true) private int id; @Column(name = "empId") private int empId; @Column(name = "empname") private String empName; @Column(name = "doj") private Date empDoj; @Column(name = "jobtitle") private String empJobTitle; public int getEmpId() { return empId; } public void setEmpId(int empId) { this.empId = empId; } public void setEmpDoj(Date empDoj) { this.empDoj = empDoj; } public String getEmpName() { return empName; } public void setEmpName(String empName) { this.empName = empName; } public Date getEmpDoj() { return empDoj; } public void setEmp_Doj(Date empDoj) { this.empDoj = empDoj; } public String getEmpJobTitle() { return empJobTitle; } public void setEmpJobTitle(String empJobTitle) { this.empJobTitle = empJobTitle; } }
EmployeeLoginForm.java
@Entity() @Table(name = "employee_login") public class EmployeeLoginForm { @Id @Column(name = "username") private String empUserName; @Column(name = "password") private String empPassword; @Column(name = "status") private String empStatus; @Column(name = "empid") private int empId; public String getEmpUserName() { return empUserName; } public int getEmpId() { return empId; } public void setEmpId(int empId) { this.empId = empId; } public void setEmpUserName(String empUserName) { this.empUserName = empUserName; } public String getEmpPassword() { return empPassword; } public void setEmpPassword(String empPassword) { this.empPassword = empPassword; } public String getEmpStatus() { return empStatus; } public void setEmpStatus(String empStatus) { this.empStatus = empStatus; } }
需求:
我想选择字段 EMPID,empname,JOBTITLE 从 employee_info 和现场 状态 从 employee_login 表当两个表上EMPID匹配…
请帮助我完成我的工作…
任何建议和指导表示赞赏…
当您谈论使用select语句执行联接时,您正在考虑使用数据库/纯SQL术语。Hibernate的功能(和危险)在于它使您摆脱了这种束缚,并使您以“对象”的方式思考。您需要的是两个对象之间的关系,然后让Hibernate处理该关系。
我建议您花一些时间阅读以下内容:
http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/associations.html
以便更好地了解Hibernate如何提供帮助。