最近在用spring+ibatis+oracle开发一个安全产品,但是遇到了一个问题,就是我调用数据库的一个存储过程,其中有一个参数是boolean类型的,由于ibatis是sql/mapping的,所以我要用java 语言来传一个java.lang.Boolean类型的和数据库对应,代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap
PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN"
"http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="Syn">
<parameterMap id="synParam" class="java.util.Map">
<parameter property="from" jdbcType="NUMBER"
javaType="java.math.BigDecimal" mode="IN" />
<parameter property="to" jdbcType="NUMBER"
javaType="java.math.BigDecimal" mode="IN" />
<parameter property="temp" jdbcType="Boolean"
javaType="java.lang.Boolean" mode="IN" />
</parameterMap>
一下是调用方法
<procedure id="syn_osUser" parameterMap="synParam">
{call tlgadmin.CopyOSUserFactor(?,?,?)}
</procedure>
但是这样就会报错:" 在调用过程时参数个数或类型出错,或是无效的列“这样的错误。
最后弄明白可以能jdbcDriver对ibatis关于oracle数据库的boolean的值的支持问题,最后修改如下,就好了。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap
PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN"
"http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="Syn">
<parameterMap id="synParam" class="java.util.Map">
<parameter property="from" jdbcType="NUMBER"
javaType="java.math.BigDecimal" mode="IN" />
<parameter property="to" jdbcType="NUMBER"
javaType="java.math.BigDecimal" mode="IN" />
<parameter property="temp" jdbcType="VARCHAR"
javaType="java.lang.String" mode="IN" />
</parameterMap>
<procedure id="syn_osUser" parameterMap="synParam">
{call tlgadmin.CopyOSUserFactor(?,?,?)}
</procedure>
分享到:
- 2008-12-10 11:11
- 浏览 3794
- 评论(0)
- 论坛回复 / 浏览 (0 / 4722)
- 查看更多
相关推荐
添加对Oracle 的引用,如Oracle.DataAccess.Client,然后将Ibatis.net 的相关配置文件和Mapper XML文件加入到项目中。使用VS2008的调试工具,可以快速测试SQL语句和业务逻辑。 【示例应用】 "IbatisTet" 可能是一个...
【webwork+ibatis+spring oracle c3p0 集成框架】 WebWork、iBatis、Spring 和 Oracle C3P0 是四个在企业级Java应用开发中常用的组件,它们各自扮演着不同的角色,而将它们集成在一起可以构建一个高效、灵活且可...
在IT领域,特别是数据库操作与Java开发中,利用ibatis框架调用Oracle存储过程是一个常见的需求,这不仅能够提升代码的执行效率,还能增强应用程序的安全性。本文将深入解析ibatis如何与Oracle数据库中的存储过程进行...
在IT行业中,数据库管理和持久化框架是至关重要的技术领域,而`ibatis+oracle`的组合就是这样的一个经典实例。Ibatis,一个轻量级的Java ORM(对象关系映射)框架,允许开发者将SQL语句与Java代码分离,提高了数据库...
ibatis 读取oracle clob类型
ibatis调用oracle存储过程分页
5. **调用Ibatis接口**:在Java代码中,通过SqlSession对象调用SQL映射文件中的方法执行数据库操作。例如: ```java SqlSession session = sqlSessionFactory.openSession(); User user = session.selectOne(...
【标题】"Ibatis+Oracle(含对应数据库sql) 源码" 是一个学习和实践Ibatis与Oracle数据库结合使用的资源包。这个资源对于初学者来说尤其有帮助,因为它包含了一个实际项目的源代码和相应的SQL脚本,使得学习者能够...
### Ibatis调用Oracle存储过程返回自定义类型 在企业级应用开发中,尤其是在金融、保险等业务场景中,往往需要处理复杂的数据结构与逻辑。本文将深入探讨如何使用Ibatis框架来调用Oracle数据库中的存储过程,并实现...
Spring、iBatis和Oracle的结合提供了强大的数据处理能力。本文将深入探讨这些技术如何协同工作,实现高效的分页缓存策略。 首先,Spring是一个开源的Java框架,它为开发人员提供了依赖注入(DI)和面向切面编程...
在IT行业中,Ibatis、Oracle数据库以及敏捷开发是三个关键领域的知识,对于任何软件开发者,尤其是后端工程师来说,理解并掌握这些技能至关重要。本文将深入探讨这三个主题,旨在为你提供一个全面的学习概览。 首先...
本项目整合了Spring MVC、iBatis和Oracle数据库,这三个组件都是企业级应用开发中的重要工具。接下来,我们将深入探讨这三个技术以及它们如何协同工作。 **Spring MVC框架** Spring MVC是Spring框架的一部分,是一...
5. **类型处理器**:iBATIS提供了一个`OracleClobHandler`,它可以自动处理CLOB到String的转换。确保在SqlMapConfig.xml中配置好这个处理器: ```xml <typeHandler handler="org.apache.ibatis.type....
Struts2、iBatis和Oracle是Web应用开发中常见的技术栈,它们分别在MVC框架、持久层处理和数据库管理方面发挥重要作用。下面将详细解释这三个组件以及它们的组合应用。 **Struts2** 是一个基于MVC(Model-View-...
Ibatis,一个轻量级的Java持久层框架,提供了与数据库交互的能力,包括调用这些Oracle的函数和存储过程。本篇文章将详细介绍如何在Ibatis中调用Oracle的函数和存储过程。 首先,理解基本概念: 1. **Oracle函数**...
《Ibatis3在Oracle数据库中的应用实践》 Ibatis3是一款优秀的Java持久层框架,它提供了灵活的SQL映射机制,使得开发者可以更好地控制数据库的交互。本篇将深入探讨Ibatis3在Oracle数据库环境下的具体应用实例,涵盖...
包含了ibatis及jdbc的驱动,需要的可以下载
总结来说,"struts2+spring+ibatis+oracle整合的登陆系统"是一个综合性的Web应用示例,它展示了如何利用Struts2处理用户交互,Spring管理依赖和事务,iBatis执行数据库操作,以及Oracle存储数据。这样的整合方案为...
"maven spring struts ibatis oracle框架整合"就是一个典型的例子,它涉及到四个关键的技术组件:Maven、Spring、Struts和iBatis,以及数据库管理系统Oracle。 **Maven**是Java项目管理工具,它负责管理项目的依赖...