- 浏览: 1251109 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (399)
- 心情故事 (12)
- java (115)
- linux (55)
- 关系型数据库 (35)
- struts,jsf,spring (11)
- jdbc,hibernate,ibatis (11)
- jsp,jstl,c:tag,标签库 (2)
- ejb,webservice (1)
- tomcat,jboss,jetty,weblogic,websphere (15)
- java网络编程 (6)
- java线程 (0)
- js,jquery,json,xml,dom,html.regex (25)
- 设计模式 (6)
- BUG记录 (2)
- ant (2)
- jsp,servlet (4)
- swing (6)
- lucene+nutch (6)
- log4j (2)
- windows doc (2)
- ruby (1)
- ruby on rails (3)
- 操作系统网络 (18)
- apache 错误 (1)
- tomcat (10)
- jboss (9)
- jetty (9)
- weblogic (9)
- websphere (10)
- apache (2)
- AIX的iostat命令查看系统磁盘的使用情况 (1)
- oracle 统计一个表格有多少列 (1)
- Exception in thread "main" java.security.KeyStoreException: Windows-MY not found (1)
- jsp (1)
- jstl (1)
- c:tag (1)
- 标签库 (1)
- struts (1)
- jsf (1)
- spring (2)
- oracle,sqlplus (2)
- sqlplus (2)
- show errors (1)
- proc (1)
- function (1)
- ORA-06544: PL/SQL: internal error (1)
- arguments: [55916] (1)
- [] (7)
- 终端身份实施文档 (1)
- 重装系统之后飞鸽传书只能看到自己 (1)
- vsftp "上传 553 Could not create file" (1)
- startWebLogic.sh启动失败,提示Error initializing Embedded LDAP Server (1)
- java agent 注册为 windows 服务 (1)
- centos (1)
- svn (1)
- apr (1)
- apr-util (1)
- activemq (2)
- oracle (5)
- mysql (3)
- nosql (3)
- NSIS (1)
- windows wmic (1)
- c 指针 (1)
- c c++ (0)
- jmeter (0)
- 性能测试 (0)
- linux,备份 (2)
- C++ ,Virtual (1)
- windows dos (1)
- android (2)
- 大数据,云计算 (1)
- JVM垃圾收集 (1)
- jdbc (2)
- invoke (1)
- hibernate (1)
- ibatis (1)
- 个人开源项目源码收藏 (1)
- 批处理 (1)
- Mongodb mapreduce (8)
- kettle (1)
- Mongodb capped (1)
- mongodb gridfs (1)
- Mongodb 入门基础知识 (1)
- mongodb (8)
- hadoop2.5.1 (1)
- hadoop (4)
- eclipse (1)
- hdfs fs (1)
- elipse hadoop plugin (1)
- PHP相关知识 (1)
- js (1)
- jquery (1)
- json (1)
- xml (1)
- dom (1)
- html.regex (1)
- 网络知识 (1)
- nginx (1)
- docker (1)
- 测试 (1)
- nodejs (1)
- iptables (1)
- linux gitlab (1)
最新评论
-
July01:
最近了解到一款StratoIO打印控件,功能如下:1、Html ...
web页面调用window.print()函数实现打印的功能 -
hxdtech:
非常感谢!
我在学习ibatis时的培训ppt -
zmwxiaoming:
what 能连数据库不错
SOLR的学习整理 -
springdata_springmvc:
java程序语言学习教程 地址http://www.zuida ...
java获取当前操作系统的信息 -
huanzei:
整理的不错,
oracle lpad函数
1环境:oracle10g,spring2.5,ibatis2.3.
2由于项目里面要调用oracle的存储过程,原本采用如下方法调用:
{call ?=Tlgadmin.check(?,?)}
但实际上是会报异常:提示oracle的动态sql语句太长。后来由数据库小组得知:动态sql的大小是有限制的。大小不能超过32K。
既然oracle自己不能执行那么长的sql,实际的调用办法:用jdbc 来调用:应为代码是存在数据里的,所以首先先把它取出来,然后用jdbc 来调用。
A取出类型为CLOB的sql,配置文件这么写的:
<resultMap id="recycle_codeList"
class="com.hzmc.capaa.domain.persistence.cap.RecycleCode">
<result property="id" column="id" />
<result property="owner" column="owner" />
<result property="name" column="name" />
<result property="otype" column="otype" />
<result property="status" column="status" />
<result property="code" column="code"
typeHandler="org.springframework.orm.ibatis.support.ClobStringTypeHandler" />
<result property="opseq" column="opseq" />
<result property="optype" column="optype" />
<result property="opTime" column="optime" />
<result property="dbId" column="dbid" />
</resultMap>
<select id="RecycleCode_showClobDetailById"
resultMap="recycle_codeList"
parameterMap="recycleCodeMap">
select id,owner,name,otype,status,code,opseq,optype,optime,dbid from
mc$$asset_recycle_code where id=? and dbid=?
</select>
B java代码:取出CLOB,然后用jdbc执行。
public RecycleCode showColobByIdAndRecoving(Map map) {
RecycleCode code = (RecycleCode) this.getSqlMapClientTemplate()
.queryForObject("RecycleCode_showClobDetailById", map);
Connection con = null;
Statement st = null;
try {
con = this.getSqlMapClientTemplate().getDataSource()
.getConnection();
st = con.createStatement();
st.execute(code.getCode());
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
st.close();
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
return code;
}
这样就可以解决oracle执行动态sql大小不能超过32k的问题。
评论
ORACLE的SQL语句的长度是有限制的
发表评论
-
struts2+spring2.6+hibernate3.4
2009-11-09 12:23 2014最近自己华了几天的时间,搭了一个ssh的架构,现在写 ... -
ibatis 对连接池的支持
2009-07-21 15:53 4217ibatis 对连接池的支持有3种,SIMPLE.DB ... -
我在学习ibatis时的培训ppt
2009-04-15 09:40 2767我在学习ibatis时的PPT,现在共享出来给大家,希望对需要 ... -
ibatis的动态sql,call proc等需要注意的地方(经验总结)
2009-04-10 10:06 27651环境:ibatis2.3,spring2.5. ... -
ibatis调用oracle的函数,存储过程的方法 IN 和OUT /游标(第五章)
2009-04-02 15:48 21451对于全部是in 类 ... -
ibatis的DML的写法(五,六,八章综合)
2009-03-20 14:58 2147<?xml version="1.0&q ... -
ibatis的sqlMap配置文件(包含第三章)
2009-03-20 14:40 2158(1):sqlMapConfig.xml文件是Ibatis ... -
ibatis union oracle(第四章bean)
2009-01-07 10:31 2215ibatis中使用联合查询,com.hzmc. ... -
ibatis的优点和好处(包含一二章节)
2008-12-10 11:15 1967Ibatis的优势。 Ibatis是一个混合性的解决方案,吸 ... -
ibatis jdbcType Boolean oracle(第五章)
2008-12-10 11:11 3795最近在用spring+ibatis+oracle开发一个安全产 ...
相关推荐
ibatis调用oracle存储过程分页
在IT领域,特别是数据库操作与Java开发中,利用ibatis框架调用Oracle存储过程是一个常见的需求,这不仅能够提升代码的执行效率,还能增强应用程序的安全性。本文将深入解析ibatis如何与Oracle数据库中的存储过程进行...
### Ibatis调用Oracle存储过程返回自定义类型 在企业级应用开发中,尤其是在金融、保险等业务场景中,往往需要处理复杂的数据结构与逻辑。本文将深入探讨如何使用Ibatis框架来调用Oracle数据库中的存储过程,并实现...
iBatis动态SQL标签用法 iBatis是Java持久层框架,提供了动态SQL标签来实现动态查询。动态SQL标签可以根据不同的条件生成不同的SQL语句,从而提高查询效率和灵活性。 动态SQL片段 iBatis提供了动态SQL片段的功能,...
Ibatis,一个轻量级的Java持久层框架,提供了与数据库交互的能力,包括调用这些Oracle的函数和存储过程。本篇文章将详细介绍如何在Ibatis中调用Oracle的函数和存储过程。 首先,理解基本概念: 1. **Oracle函数**...
在实践中,你可以期待找到如何创建Oracle数据库表的SQL脚本,如何配置Ibatis以连接Oracle,如何编写和执行SQL语句,以及如何在Java代码中调用这些操作的示例。 总的来说,这个资源将帮助学习者理解以下几个关键知识...
3. **存储过程调用**:Ibatis可以通过`<select>`、`<procedure>`元素调用Oracle的存储过程,增强业务逻辑的封装性。 4. **连接池管理**:Ibatis可以与各种连接池(如C3P0、Druid、HikariCP等)集成,提高数据库连接...
本篇文章将详细探讨如何在iBatis中调用Oracle的函数和存储过程,尤其是处理IN和OUT参数以及游标的场景。 首先,我们需要了解iBatis的基本工作原理。iBatis是一个SQL映射框架,它允许开发者将SQL语句写在XML配置文件...
### iBatis中的动态SQL语句详解 #### 引言 在进行数据库操作时,我们经常需要根据不同的条件构建不同的SQL语句。...希望本文能帮助开发者更好地理解和掌握iBatis框架中的动态SQL技术,从而提升开发效率和项目质量。
5. **调用Ibatis接口**:在Java代码中,通过SqlSession对象调用SQL映射文件中的方法执行数据库操作。例如: ```java SqlSession session = sqlSessionFactory.openSession(); User user = session.selectOne(...
ibatis 读取oracle clob类型
通过这样的整合,开发者能够利用Spring MVC的控制反转和依赖注入,iBatis的SQL灵活性,以及Oracle的高性能存储,构建出一个稳定、高效的Web应用系统。同时,这个项目也为其他开发者提供了一个学习和参考的实例,帮助...
ibatIS调用存储过程是数据库操作中常见的一种技术,特别是在复杂的业务逻辑处理或数据批量操作时,存储过程能够提供更高的效率和更好的性能。本文将深入探讨如何在ibatIS框架中调用存储过程,以及涉及到的相关知识点...
Spring、iBatis和Oracle的结合提供了强大的数据处理能力。本文将深入探讨这些技术如何协同工作,实现高效的分页缓存策略。 首先,Spring是一个开源的Java框架,它为开发人员提供了依赖注入(DI)和面向切面编程...
根据提供的文件信息,标题为“ibatis调用存储过程”,主要关注的是如何使用ibatis框架来调用数据库中的存储过程。下面将详细解释ibatis框架的基本概念、存储过程的概念以及如何在ibatis中配置和执行存储过程。 ### ...
`iBatis`是一个优秀的持久层框架,它使得Java开发者能够方便地将SQL语句与Java代码相结合,实现灵活的数据访问。而`Oracle`作为一款功能强大的关系型数据库管理系统,广泛应用于大型企业级应用。本示例“ibatis + ...
此外,iBATIS还支持动态SQL,使得SQL构建更加灵活。 至于Oracle数据库,它的特点是高性能、高可靠性以及丰富的功能。在单表操作中,可能涉及创建User表,包含id、name、email等字段,以及相关的主键约束和索引。增...