Java Hibernate namedquery错误参数id在[from EmployeeName e其中e.name=:name]中不作为命名参数存在
我有两个类,一个POJO和一个main类,我正在hibernate中使用带注释的命名查询 POJO类如下所示Java Hibernate namedquery错误参数id在[from EmployeeName e其中e.name=:name]中不作为命名参数存在,java,hibernate,named-query,Java,Hibernate,Named Query,我有两个类,一个POJO和一个main类,我正在hibernate中使用带注释的命名查询 POJO类如下所示 @NamedQueries( { @NamedQuery( name="findEmployeeName", query="from Employeenam e where e.name=:name" )
@NamedQueries(
{
@NamedQuery(
name="findEmployeeName",
query="from Employeenam e where e.name=:name"
)
}
)
@Entity
@Table(name = "employee")
public class Employeenam {
// public String tostring(){return id+" " +name+ " " +salary+ " " +job;}
@Id
@GeneratedValue
@Column(name = "id")
int id;
@Column(name = "name")
String name;
@Column(name = "salary")
int salary;
@Column(name = "job")
String job;
public int setId() {
return id;
}
public void getId(int Id) {
this.id = Id;
}
public String setName() {
return name;
}
public void getName(String Name) {
this.name = Name;
}
public int getSalary() {
return salary;
}
public void setSalary(int Salary) {
this.salary = Salary;
}
public String setJob() {
return job;
}
public void getJob(String Job) {
this.job = Job;
}
}
主要类别为:
public class FetchData {
public static void main(String[] args) {
Configuration configuration = new Configuration();
configuration.configure("hibernate.cfg.xml");
SessionFactory sfactory = configuration.buildSessionFactory();
Session session = sfactory.openSession();
Query query = session.getNamedQuery("findEmployeeName");
query.setString("name", "dfdsf");
Employeenam e = new Employeenam();
List<Employeenam> empList = query.list();
session.close();
}
}
有人能帮我做这个吗。。我又错在哪里了
public int setId()
{
return id;
}
public void getId(int Id) {
this.id = Id;
}
您错误地编码了ID的getter和setter方法。getId应该返回int而不是setId
您对ID的getter和setter方法进行了错误编码。getId应该返回int而不是setId。My gess是指您实际执行的代码包含行
query.setString(“ID”,“dfdsf”)
而不是query.setString(“name”,“dfdsf”)代码>。检查您是否重新编译了代码。My gess是指您实际执行的代码包含以下行:query.setString(“id”,“dfdsf”)
而不是query.setString(“name”,“dfdsf”)代码>。检查您是否已重新编译代码。
public int setId()
{
return id;
}
public void getId(int Id) {
this.id = Id;
}