`
javajdbc
  • 浏览: 43086 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

Hibernate 中使用存储过程的规则和限制

阅读更多
Hibernate 中使用存储过程的规则和限制:

为了在 Hibernate 中使用存储过程,你必须遵循一些规则。不遵循这些规则的存储过程将不可用。如果你仍然想使用他们,你必须通过 session.connection() 来执行他们。这些规则针对于不同的数据库。因为数据库提供商有各种不同的存储过程语法和语义。

对存储过程进行的查询无法使用 setFirstResult()/setMaxResults() 进行分页。

建议采用的调用方式是标准 SQL92: { ? = call functionName(<parameters>) } 或者 { ? = call procedureName(<parameters>) }。原生调用语法不被支持。

对于 Oracle 有如下规则:


函数必须返回一个结果集。存储过程的第一个参数必须是 OUT,它返回一个结果集。这是通过 Oracle 9 或 10 的 SYS_REFCURSOR 类型来完成的。在 Oracle 中你需要定义一个 REF CURSOR 类型,参见 Oracle 的手册。


对于 Sybase 或者 MS SQL server 有如下规则:


存储过程必须返回一个结果集。注意这些 servers 可能返回多个结果集以及更新的数目。Hibernate 将取出第一条结果集作为它的返回值,其他将被丢弃。


如果你能够在存储过程里设定 SET NOCOUNT ON,这可能会效率更高,但这不是必需的。

分享到:
评论

相关推荐

    Hibernate3调用存储过程用法

    1. 存储过程的命名应遵循数据库的命名规则,比如在MySQL中,使用CALL关键字,而在Oracle中,可能需要使用BEGIN/END结构。 2. 如果存储过程有输出参数,需要先设置为null,然后通过get方法获取结果。 3. Hibernate3不...

    Hibernate+中文文档

    16.2.2. 使用存储过程来查询 16.3. 定制SQL用来create,update和delete 16.4. 定制装载SQL 17. 过滤数据 17.1. Hibernate 过滤器(filters) 18. XML映射 18.1. 用XML数据进行工作 18.1.1. 指定同时映射XML和类 ...

    hibernate3.2中文文档(chm格式)

    16.2.2. 使用存储过程来查询 16.3. 定制SQL用来create,update和delete 16.4. 定制装载SQL 17. 过滤数据 17.1. Hibernate 过滤器(filters) 18. XML映射 18.1. 用XML数据进行工作 18.1.1. 指定同时映射XML和类 ...

    Hibernate 中文 html 帮助文档

    使用存储过程的规则和限制 16.3. 定制SQL用来create,update和delete 16.4. 定制装载SQL 17. 过滤数据 17.1. Hibernate 过滤器(filters) 18. XML映射 18.1. 用XML数据进行工作 18.1.1. 指定同时映射XML和类 18.1.2....

    Hibernate中文详细学习文档

    16.2.2. 使用存储过程来查询 16.3. 定制SQL用来create,update和delete 16.4. 定制装载SQL 17. 过滤数据 17.1. Hibernate 过滤器(filters) 18. XML映射 18.1. 用XML数据进行工作 18.1.1. 指定同时映射XML和类 ...

    Hibernate v3.04中文参考手册(PDF)

    《Hibernate v3.04中文参考手册》是Java开发者的重要参考资料,它详尽地阐述了Hibernate框架在v3.04版本中的各项功能和用法。Hibernate是一个开源的对象关系映射(ORM)框架,它允许开发者用面向对象的方式来操作...

    Maven+Spring MVC +Hibernate Validate

    在本项目中,Maven确保了Spring MVC、Hibernate及其Validate模块以及其他相关库的正确集成和管理。 **Spring MVC**: Spring MVC是Spring框架的一部分,专门用于构建Web应用程序。它遵循模型-视图-控制器(MVC)设计...

    HibernateAPI中文版.chm

    16.2.2. 使用存储过程来查询 16.3. 定制SQL用来create,update和delete 16.4. 定制装载SQL 17. 过滤数据 17.1. Hibernate 过滤器(filters) 18. XML映射 18.1. 用XML数据进行工作 18.1.1. 指定同时映射XML和类 ...

    最全Hibernate 参考文档

    使用存储过程的规则和限制 16.4. 定制SQL用来create,update和delete 16.5. 定制装载SQL 17. 过滤数据 17.1. Hibernate 过滤器(filters) 18. XML映射 18.1. 用XML数据进行工作 18.1.1. 指定同时映射XML和类 18.1.2....

    Hibernate中文参考文档pdf

    - **实体映射**:Hibernate 允许定义实体类,并通过配置文件或注解的方式指定实体与数据库表之间的映射规则。 - **属性映射**:每个实体的属性可以映射到表中的列。 - **关联映射**:支持一对多、多对一等多种关联...

    hibernate_reference中文文档.pdf

    - **1.3.2 处理与渲染**:解释如何在 Web 应用程序中使用 Hibernate 来处理数据请求和呈现结果。 - **1.3.3 部署与测试**:提供部署应用程序的方法,并介绍如何进行单元测试和集成测试。 #### 2. 体系结构 ...

    hibernate程序设计

    - 应用程序类:使用Hibernate API进行数据库操作,如添加、修改、删除和查询记录。 5. **对象-关系映射基础** - 包括属性映射、标识符(ID)映射、继承映射等,这些映射规则使得Java对象能够与数据库表进行对应。...

    java 利用POI对Execel表格的统一导入与校验(利用Hibernate Validator)

    在Java中,我们通常使用注解和验证器框架,如Hibernate Validator。它实现了JSR-303/JSR-349标准,提供了一种声明式的方式来定义和执行校验规则。 4. **Hibernate Validator**: Hibernate Validator是Java Bean ...

    easyui+spring+hibernate示例,带权限管理

    在权限管理中,Hibernate 可用于存储和检索用户、角色和权限等信息。通过配置Hibernate实体类和映射文件,可以轻松地实现对用户数据的CRUD操作。 在“easyui+spring+hibernate示例”中,这三者是如何协作的呢? ...

    Hibernate教程

    使用存储过程的规则和限制 17.4. 定制SQL用来create,update和delete 17.5. 定制装载SQL 18. 过滤数据 18.1. Hibernate 过滤器(filters) 19. XML映射 19.1. 用XML数据进行工作 19.1.1. 指定同时映射XML和类 ...

    hibernate3.04中文文档.chm

    使用存储过程的规则和限制 17.4. 定制SQL用来create,update和delete 17.5. 定制装载SQL 18. 过滤数据 18.1. Hibernate 过滤器(filters) 19. XML映射 19.1. 用XML数据进行工作 19.1.1. 指定同时映射XML和类 ...

    hibernate 体系结构与配置 参考文档(html)

    使用存储过程的规则和限制 16.4. 定制SQL用来create,update和delete 16.5. 定制装载SQL 17. 过滤数据 17.1. Hibernate 过滤器(filters) 18. XML映射 18.1. 用XML数据进行工作 18.1.1. 指定同时映射XML和类 ...

    Hibernate3+中文参考文档

    使用存储过程的规则和限制 16.4. 定制SQL用来create,update和delete 16.5. 定制装载SQL 17. 过滤数据 17.1. Hibernate 过滤器(filters) 18. XML映射 18.1. 用XML数据进行工作 18.1.1. 指定同时映射XML和类 18.1.2....

    hibernate3.6 文档(pdf 格式)

    - **特定于 hbm.xml 的细节**:强调在 .hbm.xml 文件中使用的特定语法和特性。 #### 六、类型 - **值类型**:分类介绍 Hibernate 中的值类型,包括基本类型和复杂类型。 - **实体类型**:描述实体类型的定义及其...

Global site tag (gtag.js) - Google Analytics