我目前正在学习春季启动和休眠
我创建了员工实体和员工存储库
@Entity
@Table(name = "staffs")
public class Staff {
private String name;
private String gender;
private String email;
private Integer mobile;
private String joined;
@Id
private String staffID;
private String password;
private Integer isAdminStaff;
private Integer instID;
getters and setter....
}
public interface StaffRepository extends CrudRepository <Staff,String> {
}
现在我需要在 StaffRepository 中创建一个用于用户登录的方法
查询是
SELECT * FROM staffs WHERE email = 'john@example.com' AND password = 'aabc123xy' AND instID = 13
我需要在员工存储库中创建这样的方法
@AutoWired
StaffRepository staffRepo
Staff staff= staffRepo.login("john@example.com","aabc123xy",13);// execute above where query
if (staff != null) youLoggedIn();
else wrongCredits();
如何实现?
还帮助此查询::
SELECT enrolled_courses.enrollID,student.name,student.studentid from enrolled_courses INNER JOIN student where enrolled_courses.studentid = student.studentid AND student.instID = 13 AND enrolled_courses.courseid = '13I01C'
您可以通过这种方式使用 JPA 方法命名查询
Staff findByEmailAndPasswordAndInstId(String email, String password, Integer id);
在您的StaffRepository
中使用此功能,并使用您的数据调用此值
Staff staff= staffRepo.findByEmailAndPasswordAndInstId("john@example.com","aabc123xy",13);
注意:假设根据此标准,他们将是唯一的员工