Hibernate的HQL的两种参数方式

HQL的意思是Hibernate Query Language。
1."?"占位符
public List<Person> 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<Person> list=query.list();
		return list;
	}


2.自定义参数名称
	public List<Person> 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<Person> list=query.list();
		return list;
	}


如果query的范围值确定只有一个,可采用query.uniqueResult()。
发错地方了

猜你喜欢

转载自dongguojun.iteye.com/blog/906194