Hibernate HQL查询--源文档学习(一)

随着Hibernate的更新,一些旧的调用方式进行了更新修改,以下是在Hibernate4.1之后做的更新。

1. 关于Positional (HQL) parameters

源文档:

HQL-style positional parameters follow JDBC positional parameter syntax. They are declared using ? without a following ordinal. There is no way to relate two such positional parameters as being "the same" aside from binding the same value to each.

This form should be considered deprecated and may be removed in the near future.

旧的使用方式:

String hql = "select t from Blog t where t.site=?";  
Query query = getSession().createQuery(hql);  
query.setParameter(0, "micmiu.com");  

 

更新后的使用方式:

 

 

//命名参数的方式  
String hql2 = "select t from Blog t where t.site=:site";  
Query query2 = getSession().createQuery(hql2);  
query2.setParameter("site", "micmiu.com"); 

 

//JPA占位符方式  
String hql3 = "select t from Blog t where t.site=?0";  
Query query3 = getSession().createQuery(hql3);  
query2.setParameter("0", "micmiu.com");  

 

 

 

你可能感兴趣的:(Hibernate)