mybatis 调用 oracle 返回结果集 存储过程
2012-05-09 11:35
507 查看
转:http://hi.baidu.com/jy4214/blog/item/192ad99004b09992a877a464.html
运行环境
struts2+spring3.0+mybatis
Mapper配置
<select id="getSiteBySiteName" statementType="CALLABLE">
{call Q_SITE_TEST(
#{BelongsToNetwork,jdbcType=VARCHAR,mode=IN},
#{rf,jdbcType=CURSOR,mode=OUT,resultMap=Q_SITE_TEST_MAP,javaType=java.sql.ResultSet})}
</select>
<resultMap type="com.bee.pojo.TestSite" id="Q_SITE_TEST_MAP">
<result column="SITENAME" jdbcType="DECIMAL" property="sitename" />
<result column="SITENO" jdbcType="VARCHAR" property="siteno" />
</resultMap>
action调用
public String getSiteDetail(){
Map<String ,Object> map=new HashMap<String, Object>();
map.put("BelongsToNetwork", "华南中心");
iservice.getSiteBySiteName(map);
List siteList=(List)map.get("rf");
req().setAttribute("siteList", siteList);
System.out.println(siteList.size());
return this.SUCCESS;
}
存储过程
create or replace procedure Q_Site_test(BelongsToNetwork in varchar2,rf out sys_refcursor) is
--根据所属网点查询下级网点资料
--参数说明
--BelongsToNetwork:所属网点
begin
open rf for
select siteno, sitename from tab_sitelist t where belognsite=BelongsToNetwork;
end Q_Site_test;
注意这里好像不能使用parameterMap,以下这种配置方式会报错
<select id="getSiteBySiteName" statementType="CALLABLE" parameterMap="paramMap">
{call Q_SITE_TEST(
#{BelongsToNetwork},
#{rf})}
</select>
<parameterMap type="java.util.HashMap" id="paramMap" >
<parameter property="BelongsToNetwork" javaType="String" jdbcType="VARCHAR"/>
<parameter property="rf" jdbcType="CURSOR" javaType="java.sql.ResultSet" mode="OUT" resultMap="Q_SITE_TEST_MAP" />
</parameterMap>
运行环境
struts2+spring3.0+mybatis
Mapper配置
<select id="getSiteBySiteName" statementType="CALLABLE">
{call Q_SITE_TEST(
#{BelongsToNetwork,jdbcType=VARCHAR,mode=IN},
#{rf,jdbcType=CURSOR,mode=OUT,resultMap=Q_SITE_TEST_MAP,javaType=java.sql.ResultSet})}
</select>
<resultMap type="com.bee.pojo.TestSite" id="Q_SITE_TEST_MAP">
<result column="SITENAME" jdbcType="DECIMAL" property="sitename" />
<result column="SITENO" jdbcType="VARCHAR" property="siteno" />
</resultMap>
action调用
public String getSiteDetail(){
Map<String ,Object> map=new HashMap<String, Object>();
map.put("BelongsToNetwork", "华南中心");
iservice.getSiteBySiteName(map);
List siteList=(List)map.get("rf");
req().setAttribute("siteList", siteList);
System.out.println(siteList.size());
return this.SUCCESS;
}
存储过程
create or replace procedure Q_Site_test(BelongsToNetwork in varchar2,rf out sys_refcursor) is
--根据所属网点查询下级网点资料
--参数说明
--BelongsToNetwork:所属网点
begin
open rf for
select siteno, sitename from tab_sitelist t where belognsite=BelongsToNetwork;
end Q_Site_test;
注意这里好像不能使用parameterMap,以下这种配置方式会报错
<select id="getSiteBySiteName" statementType="CALLABLE" parameterMap="paramMap">
{call Q_SITE_TEST(
#{BelongsToNetwork},
#{rf})}
</select>
<parameterMap type="java.util.HashMap" id="paramMap" >
<parameter property="BelongsToNetwork" javaType="String" jdbcType="VARCHAR"/>
<parameter property="rf" jdbcType="CURSOR" javaType="java.sql.ResultSet" mode="OUT" resultMap="Q_SITE_TEST_MAP" />
</parameterMap>
相关文章推荐
- mybatis 调用oracle 存储过程并返回结果集
- Oracle 存储过程调用 返回结果集 实现分页
- oracle中存储过程调用存储过程(带有返回结果集)
- mybatis 调用oracle中的存储过程返回结果集
- Mybatis中调用返回结果集的存储过程
- SQLServer和ORACLE 存储过程的调用(返回结果集)
- JAVA调用ORACLE的存储过程、函数的返回结果集例子
- 最完整的:JAVA调用ORACLE的存储过程、函数的返回结果集例子
- 最完整的:JAVA调用ORACLE的存储过程、函数的返回结果集例子
- 调用带参数的存储过程,并返回结果集--oracle
- IBatis调用ORACLE的存储过程、函数的返回结果集例子
- Oracle存储过程中执行查询返回的结果集,并使用java代码调用【转】
- IQ存储过程中执行有结果集返回的动态SQL的调用方法
- OCCI调用带有返回结果集的存储过程,获取结果集中指定列的值
- Java调用oracle存储过程通过游标返回临时表数据
- Oracle利用存储过程返回结果集开发报表 推荐
- Delphi中调用oracle的存储过程返回数据集
- JAVA调用ORACLE的存储过程、函数的返回结果集
- Mybatis调用Oracle带包存储过程
- Dapper完美兼容Oracle,执行存储过程,并返回结果集。