我正在进行最终项目并使用hibernate制作网络应用程序。 我的主题是食谱网站,我必须显示所有喜欢的配方
这里是我喜欢的pojo类(不包括构造函数和getter setter,以使其成为短代码)
public class Likes implements java.io.Serializable {
private LikesId id;
private Member member;
private Resep resep;
private Integer likes;
public Likes() {
}
}
这里是我喜欢id的pojo课程(不包括这里的getter setter使其成为短代码)
public class LikesId implements java.io.Serializable {
private String idResep;
private String idMember;
public LikesId() {
}
public LikesId(String idResep, String idMember) {
this.idResep = idResep;
this.idMember = idMember;
}
}
现在这是我向方法显示所有喜欢者的方法
public ArrayList<Likes> getAllLikes(String kode_resep)
{
this.session = NewHibernateUtil.getSessionFactory().openSession();
ArrayList<Likes> hasil = null;;
Transaction tx = session.beginTransaction();
Query q = session.createQuery("from Likes join LikesID on ()='"+kode_resep+"'");
hasil = (ArrayList<Likes>) q.list();
session.close();
return hasil;
}
运行此方法时的错误是:
线程中的异常&#34; main&#34; org.hibernate.hql.internal.ast.QuerySyntaxException:意外AST 节点:(靠近第1行,第35列[来自model.Likes其中 。Likes.getId()getIdResep()=&#39; R001&#39;
答案 0 :(得分:0)
试试这个:
Query q = session.createQuery("from Likes l where l.id.idResep = :code_resep");
q.setParameter("code_resep",kode_resep);
q.list();