在hibernate xml文件上运行存储过程

时间:2018-06-07 15:40:28

标签: angular hibernate stored-procedures hibernate-mapping

我有一个SQL存储过程,它根据“ID”和“代码”提供分配给每个用户的菜单。 我的应用程序在Angular上运行,并使用Drools和Hibernate文件来获取填充应用程序的所有数据。

在那一刻我只想列出基于id和代码的所有菜单,但我只能列出所有菜单表(其中有超过1000条记录),就像我的hbm.xml文件没有运行存储过程。

这是我的hibernate文件:

<hibernate-mapping>
   <class name="model.Menu" table="Table_MenuItem">   
      <composite-id>
        <key-property column="Id" name="id" type="int"/>
      </composite-id>
      <property column="labelEN" name="labelen" type="string"/>
    </class>
    <sql-query name="SP_ListMenuItems">
        <return alias="labelen" class="model.Menu">
            <return-property column="labelEN" name="labelen"/>
            </return>
            <![CDATA[CALL SP_ListMenuItems(null,null,null,null)]]>
    </sql-query>
</hibernate-mapping>

这里,Table_MenuItem是包含所有记录(超过1000)的表,SP_ListMenuItems是接受4个参数的存储过程,SP_ListMenuItems(code,id,lang,condition),如果所有参数都为null,则应该给出只有17条记录,但是请注意这个案例..即使使用那个hibernate文件,这应该只给我17条记录,我有超过1000条。

我缺少什么?提前致谢

编辑:我是否必须在角度.ts文件上调用查询,如何?

0 个答案:

没有答案