hsql:多对一查询

Mrpublic 2009-04-09
@Entity
public class BaseCheckSalary {

private Integer id;

private Date startDate;

private Date endDate;

SalaryModel salaryModel;

@Id @GeneratedValue
public Integer getId() {
return id;
}

public void setId(Integer id) {
this.id = id;
}

public Date getStartDate() {
return startDate;
}

public void setStartDate(Date startDate) {
this.startDate = startDate;
}

public Date getEndDate() {
return endDate;
}

public void setEndDate(Date endDate) {
this.endDate = endDate;
}

@ManyToOne
public SalaryModel getSalaryModel() {
return salaryModel;
}

public void setSalaryModel(SalaryModel salaryModel) {
this.salaryModel = salaryModel;
}
}

public class SalaryModel {

private int id;

private String code;//樣板代碼;

private String name;//樣板名稱;

@Id
@GeneratedValue
public int getId() {
return id;
}

public void setId(int id) {
this.id = id;
}

public String getCode() {
return code;
}

public void setCode(String code) {
this.code = code;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}
}

我想由SalaryModel中的id 来查询所有的BaseCheckSalary




我这样写的:

em.createQuery("from BaseCheckSalary bcs join bcs.salaryModel sm where sm.id =:sid").setParameter("sid", model.getId()).getSingleResult();


其中 model是傳來的SalaryModel 對像 這樣寫要報一個 沒有entity 的query

??為什麽呀?(我已經catch了空指針異常, 我先寫的 bcs.SalaryModel 要報錯 我改為了salaryModel)


我這個hsql的查詢語句到底怎么寫呀?
Global site tag (gtag.js) - Google Analytics