- 浏览: 643878 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
HkEndless:
不好意思,请问这确定是回调机制吗。你的例子中只是将接口的实现类 ...
Spring CallBack回调机制介绍 -
hanmiao:
写的真乱啊,完全不知所云...
Java如何调用可执行文件和批处理命令 -
junia_1:
junia_1 写道 shock: ...
为什么要使用EJB -
junia_1:
shock:
为什么要使用EJB -
coollifer:
不错
SQL Server数据导入到Oracle中的方法
最近看了hibernate3.2支持在hbm.xml文件通过<sql-query> 配置就可以进行存储过程的调用,于是便做了相关的实验
-- Create table
create table T_TEST
(
ID NUMBER not null,
NAME VARCHAR2(30),
SEX VARCHAR2(30),
AGE NUMBER
)
而后是hbm.xml文件
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!--
Mapping file autogenerated by MyEclipse Persistence Tools
-->
<hibernate-mapping>
<class name="test.Test" table="t_test" schema="HBM">
<id name="id" column="id" type="int">
<generator class="assigned"/>
</id>
<property name="name" column="name" type="string"></property>
<property name="age" column="age" type="integer"></property>
<property name="sex" column="sex" type="string"></property>
</class>
<sql-query name="getTestList" callable="true"> <!-- function -->
<return alias="Test" class="test.Test">
<return-property name="id" column="id"></return-property>
<return-property name="name" column="name"></return-property>
<return-property name="age" column="age"></return-property>
<return-property name="sex" column="sex"></return-property>
</return>
{? = call getTestList(?)} --这个是函数的调用
</sql-query>
<sql-query name="cjjtlg" callable="true"> <!-- procedure -->
<return alias="TTest" class="test.Test">
<return-property name="id" column="id"></return-property>
<return-property name="name" column="name"></return-property>
<return-property name="age" column="age"></return-property>
<return-property name="sex" column="sex"></return-property>
</return>
{call cjjtlg(?,?) }-
-存储过程的调用
,这里如果写成帮助文档里面{?=call cjjtlg(?,?) }
那必然是报告错误。
</sql-query>
<sql-query name="singleout" callable="true"> <!-- procedure -->
<return alias="TTest" class="test.Test">
<return-property name="name" column="name"></return-property>
</return>
{call singleout(?,?) }--带输出参数的调用
</sql-query>
</hibernate-mapping>
Session session = HibernateSessionFactory.getSession();
Query query = session.getNamedQuery("cjjtlg");
query.setInteger(0, 1);
List<Test> list = query.list();
for (int i = 0; i < list.size(); i++) {
final Test t = list.get(i);
System.err.println("id:" + t.getId() + ", name:" + t.getName()
+ ", age:" + t.getAge() + ", sex:" + t.getSex());
}
System.err.println("count :" + list.size());
System.err.println("----------finish----------\n");
对于存储过程的调用对于内嵌sql-query 这里面的,那么存储过程第一个参数必须是一个结果结,且必须是一个输出参数
那么才可以使用,特别注意到时候在进行query设置的时候参数忽略第一个参数,序列号从0开始,好比query.setInteger(0, 1);如此
存储过程如下
create or replace procedure cjjtlg(st_cursor out SYS_REFCURSOR,rowsid integer) is
begin
open st_cursor for select * from t_test t where t.id=rowsid;
end cjjtlg;
query.setInteger(0, 1); 这个设置代表rowsid 这个参数是1,这点特别要注意。
如果很多读者要返回单个结果集,或者是执行某个存储过程想完成某个事项,返回参数不需要返回整个结果集,如果还想采用如此的方式进行,可以采用如下的方式来进行,只是在存储过程当中进行一些调整。
create or replace procedure singleout(st_cursor out SYS_REFCURSOR,rowsid integer) is
temp_a varchar2(100);
begin
--open st_cursor for select * from t_test t where t.id=rowsid;
select t.sex into temp_a from t_test t where t.id = rowsid;
open st_cursor for select temp_a as name,1 as id,1 as age,'man' as sex from dual;
end singleout;
这样的话,其他的调用方式跟上面一样的。
发表评论
-
hibernate Restrictions用法 MatchMode.ANYWHERE
2012-07-14 15:50 3871方法 说明 Res ... -
hibernate3 大批量更新/删除数据 (update/delete)
2011-11-10 12:15 1345Hibernate3.0 采用新的基 ... -
hibernate lazy(延迟加载)
2011-10-12 02:20 888hibernate lazy策略可以使用在: * < ... -
一些关于Hibernate延迟加载的误区
2011-09-12 23:13 848首先是第一个误区:延迟加载只能作用于关联实体 看到这个是 ... -
org.hibernate.PropertyAccessException: IllegalArgumentException occurred calling
2011-08-12 19:17 1216Hi I am facing a problem wit ... -
Criteria Condition: Match Mode End
2011-07-02 11:05 949//////////////////////////// ... -
Criteria: Group By Criteria
2011-07-02 11:03 1254/////////////////////////////// ... -
Query Criteria Equal
2011-07-02 11:02 857/////////////////////////////// ... -
Criteria: Order
2011-07-02 10:59 739//////////////////////////// ... -
Criteria: Associations Sorting Criteria
2011-07-02 10:57 866//////////////////////////// ... -
hibernate的Query有没有setResultTransformer这个方法
2011-07-01 23:24 3045可以对原生SQL 查询使用ResultTransformer。 ... -
Hibernate中一级缓存、二级缓存及查询缓存的技术性总结
2011-06-21 17:31 1214一、 一级缓存 1. ... -
hibernate 保存 oracle 10g大数据字段
2011-06-14 04:01 1420Java代码 要点如下: ... -
Hibernate 错误原因总结
2011-06-14 00:10 13901、错误: object references an unsa ... -
MappingException提示Association references unmapped class错误的解决方法
2011-06-12 17:09 10出现如下错误信息时 Caused by: org.hibe ... -
Hibernate一对多关联映射的配置及其级联删除问题
2011-06-12 17:07 9首先举一个简单的一对多双向关联的配置: 一的一端:Quest ... -
Hibernate多对一关联映射原理、映射方法和数据的保存
2011-06-12 17:06 13Hibernate的多对一关联映射实现的基本原理就是: 在多 ... -
Hibernate一对多单向关联和双向关联映射方法及其优缺点
2011-06-12 17:05 11一对多关联映射和多对一关联映射实现的基本原理都是一样的,既是在 ... -
inverse = “true” example and explanation
2011-06-11 22:18 1088In Hibernate, only the “relatio ... -
ibatis和hibernate区别
2011-04-13 17:34 796ibatis:sql需要自己写 hibe ...
相关推荐
9.6 通过Hibernate调用存储过程 9.7 小结 9.8 思考题 第10章 映射组成关系 10.1 建立精粒度对象模型 10.2 建立粗粒度关系数据模型 10.3 映射组成关系 10.3.1 区分值(Value)类型和实体(Entity)类型...
1.4.8 RMI(远程方法调用) 1.4.9 JMS(Java消息服务) 1.4.10 JMX(Java分布式管理) 1.4.11 JACC(Java容器授权合同) 1.4.12 JCA(Java连接器体系) 1.5 小结 第二章 MVC模式介绍 2.1 MVC模式概述 2.1.1 MVC模式...
1.4.8 RMI(远程方法调用) 1.4.9 JMS(Java消息服务) 1.4.10 JMX(Java分布式管理) 1.4.11 JACC(Java容器授权合同) 1.4.12 JCA(Java连接器体系) 1.5 小结 第二章 MVC模式介绍 2.1 MVC模式概述 2.1.1 MVC模式...
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)类型...
9.6 通过Hibernate调用存储过程 9.7 小结 9.8 思考题 第10章 映射组成关系 10.1 建立精粒度对象模型 10.2 建立粗粒度关系数据模型 10.3 映射组成关系 10.3.1 区分值(Value)类型和实体(Entity)类型...
1.4.8 RMI(远程方法调用) 1.4.9 JMS(Java消息服务) 1.4.10 JMX(Java分布式管理) 1.4.11 JACC(Java容器授权合同) 1.4.12 JCA(Java连接器体系) 1.5 小结 第二章 MVC模式介绍 2.1 MVC模式概述 2.1.1 MVC模式...
其中Hibernate 2相关的封装类位于org.springframework.orm.hibernate2.*包中,而Hibernate 3.0的封装类位于org.springframework.orm.hibernate3.*包中,需要根据您所选用Hibernate版本进行正确选择。 3、Lob字段...
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 ...
3.2 用AspectJ注解声明aspect 115 3.2.1 问题 115 3.2.2 解决方案 115 3.2.3 工作原理 116 3.3 访问连接点信息 121 3.3.1 问题 121 3.3.2 解决方案 122 3.3.3 工作原理 122 3.4 指定aspect优先级 ...
3.2 用AspectJ注解声明aspect 115 3.2.1 问题 115 3.2.2 解决方案 115 3.2.3 工作原理 116 3.3 访问连接点信息 121 3.3.1 问题 121 3.3.2 解决方案 122 3.3.3 工作原理 122 3.4 指定aspect优先级 ...
3.2. Struts2的Action调用业务逻辑 - 19 - 3.2.1. 登录Action--OpenIDLoginAction - 19 - 3.2.2. 进入的Action—FirstPageAction - 20 - 3.3. JSP页面 - 20 - 3.4. 运行示例 - 21 - 3.4.1. 登录 - 21 - 3.4.2. ...
4.3项目实战——存储图书信息 73 本章小结 78 课后练习 79 第5章struts2框架基础 80 5.1mvc框架 80 5.1.1model1与model2 80 5.1.2mvc设计模式 81 5.1.3struts2框架的mvc架构 82 5.2struts2概览 84 5.2.1...
11.2.6 调用存储过程 11.3 BLOB/CLOB类型数据的操作 11.3.1 如何获取本地数据连接 11.3.2 相关的操作接口 11.3.3 插入Lob类型的数据 11.3.4 以块数据方式读取Lob数据 11.3.5 以流数据方式读取Lob数据 11.4 自增键和...
11.2.6 调用存储过程 11.3 BLOB/CLOB类型数据的操作 11.3.1 如何获取本地数据连接 11.3.2 相关的操作接口 11.3.3 插入Lob类型的数据 11.3.4 以块数据方式读取Lob数据 11.3.5 以流数据方式读取Lob数据 11.4 自增键和...
5.4.1选择hibernate的版本 5.4.2使用hibernate模板 5.4.3建立基于hibernate的dao 5.4.4使用hibernate3上下文会话 5.5spring和java持久api 5.5.1使用jpa模板 5.5.2创建一个实体管理器工厂 5.5.3建立使用jpa的...
5.4.1 选择Hibernate的版本 5.4.2 使用Hibernate模板 5.4.3 建立基于Hibernate的DAO 5.4.4 使用Hibernate 3上下文会话 5.5 Spring和Java持久API 5.5.1 使用JPA模板 5.5.2 创建一个实体管理器工厂 5.5.3 建立...
5.4.1 选择Hibernate的版本 5.4.2 使用Hibernate模板 5.4.3 建立基于Hibernate的DAO 5.4.4 使用Hibernate 3上下文会话 5.5 Spring和Java持久API 5.5.1 使用JPA模板 5.5.2 创建一个实体管理器工厂 5.5.3 建立...
目前市场业务中在产品以及其他项目的认证和检测方面存在诸多不便,用户需要实地考察并频繁与检测单位沟通,填写繁琐的纸质检测报告、当面送递样品,对于检测环节中存在的问题难以及时交互并处理。市场上相应的检测...