Hibernate命名查询

来源:互联网 发布:淘宝质量好的包包店 编辑:程序博客网 时间:2024/06/06 05:14

Hibernate命名查询

Hibernate命名查询就是在映射文件中定义字符串形式的查询语句。

HQL查询语句的命名查询(不能写在class里面)

列:

<hibernate-mapping>
    <class name="entity.House" table="house">
     .................
    </class>
     <query name="queryHouse">
      <![CDATA[
      from House
      ]]>
       </query>
 
</hibernate-mapping>

SQL查询语句的命名查询(不能写在class里面)

列:

   <hibernate-mapping>
       <class name="entity.House" table="house">
          ................
       </class>

   <!-- 表连接查询HOUSE表连接STREET表 -->
          <sql-query name="query">
            <return alias="h" class="entity.House"/>
            <return-join alias="s" property="h.street"/>
             <![CDATA[
           select {h.*},{s.*} from HOUSE h,STREET s where h.street_id=s.id and h.PRICE>?
              ]]>
        </sql-query>

   </hibernate-mapping>

我们配置映射文件后如何调用呢?

     Query query=session.getNamedQuery("queryHouse");//queryHouse就是要调用映射文件中的名字

0 0