【发布时间】:2014-08-28 23:07:47
【问题描述】:
我无法在 JPA 中检查两个日期是否相等。在我添加出生日期之前,下面的比较工作正常。我不确定我的 JPQL 是否正确:
TypedQuery<Applicant> query = em.createQuery("select app "
+ "from Applicant app where "
+ "app.firstName = :firstName AND app.middleName = :middleName "
+ "AND app.lastName = :lastName"
+" AND app.dob = :dateOfBirth", Applicant.class);
query.setParameter("firstName", searchableApplicant.getFirstName().trim());
query.setParameter("middleName", searchableApplicant.getMiddleName().trim());
query.setParameter("lastName", searchableApplicant.getLastName().trim());
query.setParameter("dateOfBirth", searchableApplicant.getDob());
申请对象属性:
public class Applicant implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "applicant_id")
private Integer applicantId;
@Size(max = 45)
@Column(name = "first_name")
private String firstName;
@Size(max = 45)
@Column(name = "middle_name")
private String middleName;
@Size(max = 45)
@Column(name = "last_name")
private String lastName;
@Size(max = 45)
@Column(name = "maiden_name")
private String maidenName;
@Column(name = "dob")
@Temporal(TemporalType.DATE)
private Date dob;
【问题讨论】: