DB2中简单存储过程 selectAllUsers
CREATE procedure selectAllUsers
DYNAMIC RESULT SETS 1
BEGIN
DECLARE temp_cursor1 CURSOR WITH RETURN TO CLIENT FOR
SELECT * FROM test;
OPEN temp_cursor1;
END;
映射文件中关于存储过程内容如下
<hibernate-mapping package="com.unmi.vo">
<class name="Test" table="TEST">
............
</class>
<sql-query callable="true" name="selectAllUsers">
<return alias="aa" class="Test">
<return-property name="oborqt" column="OBORQT"/>
<return-property name="moorqt" column="MOORQT"/>
<return-property name="roschn" column="ROSCHN"/>
<return-property name="plandate" column="PLANDATE"/>
</return>
{ ? = call selectAllUsers() }
</sql-query>
</hibernate-mapping>
{ ? = call selectAllUsers() } 也可以写成{ call selectAllUsers() },
如果有参数就写成
{ ? = call selectAllUsers(?,?,?) }
代码中对query设置相应位置上的值就OK
Java调用关键代码如下
Session session = HibernateUtil.currentSession();
Query query = session.getNamedQuery("selectAllUsers");
List list = query.list();
System.out.println(list);
要求你的存储过程必须能返回记录集,否则要出错
如果你的存储过程是完成非查询任务就应该在配置文件用以下三个标签
<sql-insert callable="true">{call createPerson (?, ?)}</sql-insert>
<sql-delete callable="true">{? = call deletePerson (?)}</sql-delete>
<sql-update callable="true">{? = call updatePerson (?, ?)}</sql-update>
有一点不好的地方就是调用存储过程获取记录集时,不能对Query使用
setFirstResult(int)和setMaxResults(int)方法来分页
分享到:
相关推荐
hibernate3调用存储过程的用法详细介绍。
1、使用hibernate调用不带参数返回值的存储过程方法public Boolean doInHibernate(Session session) t
9.6 通过Hibernate调用存储过程 9.7 小结 9.8 思考题 第10章 映射组成关系 10.1 建立精粒度对象模型 10.2 建立粗粒度关系数据模型 10.3 映射组成关系 10.3.1 区分值(Value)类型和实体(Entity)类型...
3. 调用 SessionFactory 创建 Session 的方法:可以通过用户自行提供 JDBC 连接或让 SessionFactory 提供连接来创建 Session。 二、Hibernate 的缓存体系 Hibernate 的缓存体系分为一级缓存和二级缓存: 1. 一级...
9.6 通过Hibernate调用存储过程 9.7 小结 9.8 思考题 第10章 映射组成关系 10.1 建立精粒度对象模型 10.2 建立粗粒度关系数据模型 10.3 映射组成关系 10.3.1 区分值(Value)类型和实体(Entity)类型...
6.3 Log4j的使用方法 6.3.1 配置Log4j 6.3.2 配置根Logger 6.3.3 指定日志输出位置 6.3.4 指定日志输出格式 6.3.5 指定日志输出优先级 6.3.6 在代码中使用Log4j 6.4 改进Log4j 6.5 小结 第七章 Ant使用指南 7.1 Ant...
文件数据存储在Blob类型的FILE_CONTENT表字段上,在Spring中采用OracleLobHandler来处理Lob字段(包括Clob和Blob),由于在程序中不需要引用到oracle数据驱动程序的具体类且屏蔽了不同数据库处理Lob字段方法上的...
[强烈推荐, 文档不多, 很快就可以看完, 看完了, 就会使用play了] 目录 MVC应用程序模型 - 7 - app/controllers - 8 - app/models - 8 - app/views - 8 - 请求生命周期 - 8 - 标准应用程序布局layout - 9 - app...
6.3 Log4j的使用方法 6.3.1 配置Log4j 6.3.2 配置根Logger 6.3.3 指定日志输出位置 6.3.4 指定日志输出格式 6.3.5 指定日志输出优先级 6.3.6 在代码中使用Log4j 6.4 改进Log4j 6.5 小结 第七章 Ant使用指南 7.1 Ant...
使用hibernate编程步骤 1)配置环境,加载hibernate的jar文件,以及连接数据库连接使用的jar文件,并配置CLASSPATH环境变量。 2)写POJO类(普通的java类) 3)写hibernate所需的配置文件,hibernate.cfg.xml ,...
9.6 通过Hibernate调用存储过程 9.7 小结 9.8 思考题 第10章 映射组成关系 10.1 建立精粒度对象模型 10.2 建立粗粒度关系数据模型 10.3 映射组成关系 10.3.1 区分值(Value)类型和实体(Entity)类型...
9.6 通过Hibernate调用存储过程 9.7 小结 9.8 思考题 第10章 映射组成关系 10.1 建立精粒度对象模型 10.2 建立粗粒度关系数据模型 10.3 映射组成关系 10.3.1 区分值(Value)类型和实体(Entity)类型...
用hibernate持久化对象模型 - 69 - 保持模型stateless - 70 - 07.JPA持久化 - 70 - 启动JPA实体管理器 - 70 - 获取JPA实体管理器 - 70 - 事务管理 - 71 - play.db.jpa.Model支持类 - 71 - 为GenreicModel定制id映射 ...
6.3 Log4j的使用方法 6.3.1 配置Log4j 6.3.2 配置根Logger 6.3.3 指定日志输出位置 6.3.4 指定日志输出格式 6.3.5 指定日志输出优先级 6.3.6 在代码中使用Log4j 6.4 改进Log4j 6.5 小结 第七章 Ant使用指南 7.1 Ant...
6. Hibernate 调用 Oracle 存储过程..................................................................................... 6 用 Java 调用 Oracle 存储过程总结..................................................
中间层主要是为了方便ui层调用数据和存储数据设计的类; 数据库交互层主要是为了向中间层提供数据。 数据库交互层分为两小层: 其中一层的类和数据库中每一个表相对应并封装了一些数据库基本操作; 另外一层和...
第二部分详细讲解了jsf ri、jta、jndi、rmi、jms、javamail、ejb 3的session bean、message driven bean、jpa、jax-ws 2、jaas等java ee知识,这部分知识以jsf+ejb 3+jpa整合开发为重点,通过使用netbeans ide工具...
5.12 hibernate调用存储过程 343 5.13 xml数据持久化 346 5.14 小结 348 第6章 充分利用spring 2.5的ioc利器统管bean世界 349 6.1 java程序员的春天厚礼—spring 2.5 349 6.1.1 爱上spring 2.5的十大理由 350 ...
XDoclet 是一个通用的代码生成实用程序,是一个扩展的Javadoc Doclet引擎,它允许您使用象 JavaDoc 标记之 类的东西来向诸如类、方法和字段之类的语言特征添加元数据。随后,它利用这些额外的元数据来生成诸如部署...