Hibernate运用命名查询

Hibernate使用命名查询

命名查询:就是在配置文件里面定义好sql语句。

 

简单示例:

<hibernate-mapping package="com.zchen.domain">
...
...
      </class>
      <query name="getUserByName">
                 <![CDATA[from User where name=:name]]>
      <query>
</hibernate-mapping>

 

 

在dao层调用:

    

Query query = session.getNamedQuery("getUserByName");
query.setString("name","admin");
List list = query.list();

 

 

注:

也可以将<query    >配置属性放到<class>里面。但调用的时候有点不同。(包+类+配置名)

即:Query query = session.getNamedQuery("com.zhen.domain.User.getUserByName");

 

 

也可以使用sql语句

<sql-query>不多做介绍