Hibernate的HQL的两种参数方式

HQL的意思是Hibernate Query Language。
1."?"占位符

public List getPersons(String name) {
String hql="from Person as person where person.name=?";
Query query=sessionFactory.getCurrentSession().createQuery(hql);
query.setString(0, name);
// 分页查询
// query.setFirstResult(2);
// query.setMaxResults(2);
List list=query.list();
return list;
}


2.自定义参数名称

public List getPersons(String name) {
String hql="from Person as person where person.name=:n";
Query query=sessionFactory.getCurrentSession().createQuery(hql);
query.setString("n", name);
// 分页查询
// query.setFirstResult(2);
// query.setMaxResults(2);
List list=query.list();
return list;
}


如果query的范围值确定只有一个,可采用query.uniqueResult()。
[color=red][b]发错地方了[/b][/color]

你可能感兴趣的:(Hibernate数据库)