`

使用ibatis时Error setting a property: IllegalArgumentException 异常

阅读更多

在使用ibatis做数据访问层时,有时会出现Error setting a property: IllegalArgumentException 异常,

该异常出现的一个原因是因为数据库中有null字段,尤其是非字符串字段,比如int类型,ibatis会使用Domain对象的set方法将数据库拿出来的值赋给Domain对象的属性,Domain对象属性为int时,将数据库中拿出的null赋值给int就会抛出这种错误,解决办法:

 

1. 将数据库类似int类型的字段赋上一个默认值,比如说0等。(当然不影响业务逻辑) 

2. 将Domain对象的属性int等改为对应的装箱类型,比如Integer等,因为Integer可以为null,所以可以赋值。

3. 如果属性实在不想使用装箱类型,我们知道ibatis是依靠Domain的set方法进行赋值,所以可以改写set方法,比如:

public void setYear(Integer year) {
	if (year != null) {
		this.year = year;
	}
}

 

 

分享到:
评论

相关推荐

    iBATIS_In_Action:使用映射语句(一).doc

    【iBATIS In Action:使用映射语句(一)】 在深入探讨iBATIS的映射语句之前,我们首先要理解一些基本概念。iBATIS是一个轻量级的持久层框架,它允许开发者将SQL语句直接写在XML文件中,通过映射语句与Java对象进行...

    ibatis_修改sqlmap不重启

    在IT行业中,Ibatis是一个广泛使用的轻量级Java ORM(对象关系映射)框架,它允许开发者将SQL查询与Java代码分离,提高了代码的可维护性和可读性。"ibatis_修改sqlmap不重启"这个主题聚焦于如何在开发过程中优化流程...

    ibatis简易使用 ibatis简易使用 ibatis简易使用

    以下是对iBATIS简易使用的详细解释: 1. **环境准备**: - **jar文件**:iBATIS框架运行需要依赖一些库文件,包括`log4j`用于日志记录,`ibatis`核心库,以及`jdbc`驱动,这些都需要添加到项目的类路径中。 - **...

    maven整合ibatis的简单例子

    在Java开发中,Maven和iBatis是两个非常重要的工具。Maven是一个项目管理和综合工具,它帮助开发者管理依赖、构建项目,并提供了一种标准化的项目结构。而iBatis则是一个SQL映射框架,它将SQL语句与Java代码分离,...

    ibatis的使用教程

    要开始使用 Ibatis,首先需要从官方网站下载最新版本的 ibatis jar 包,以及 log4j 日志框架的 jar 包。然后,在Java项目中添加这些库,配置log4j.properties以开启SQL日志输出。接着,新建主配置文件sqlMapConfig....

    .net中使用iBATIS的小例子

    在.NET中使用iBATIS时,首先需要安装iBATIS.NET库。可以通过NuGet包管理器或者直接下载源码编译来获取。在VS2008项目中,添加对iBATIS.NET的引用,这样就可以开始配置和使用了。 接着,我们看压缩包内的"数据库.txt...

    ibatis资料ibatis资料

    1. **《iBATIS in Action》**: 这通常是一本关于iBATIS的书籍,可能深入介绍了iBATIS的原理、配置、使用方法以及最佳实践,对于学习和理解iBATIS非常有帮助。 2. **《ibatis Guide》**: 这可能是iBATIS的官方指南...

    iBATIS 三个版对比

    - **iBATIS v1** 和 **iBATIS v2**:均使用`<sql-map resource=".../>`来指定外部的映射文件。 - **iBATIS v3**:采用了新的标签`<mappers>`,并在其中使用`<mapper resource=".../>`来引用映射文件。 这一改变...

    ibatis2.3.4.rar

    在实例中,你可以尝试以下几个步骤来学习和使用Ibatis: 1. 配置Ibatis:首先,你需要在项目中引入Ibatis的jar包,并设置相应的配置文件(如mybatis-config.xml),配置数据源、事务管理器以及Mapper扫描路径。 2....

    ibatis 使用手册

    《iBatis 使用手册》是一份详尽的开发资源,涵盖了iBatis框架的各个方面,包括iBatis的开发指南、SQL Maps的使用以及入门教程。iBatis是一款优秀的持久层框架,它允许Java开发者将SQL语句与Java代码分离,实现数据...

    IBatis.NET开发文档

    这个开发文档集合包含了"iBATIS SQL Maps 开发指南"、"iBATIS SQL Maps入门教程"以及"ibatis 开发指南"等资源,旨在帮助开发者深入理解和有效地使用iBATIS.NET。 iBATIS的核心理念是将SQL语句与应用程序代码分离,...

    ibatis总配置和映射配置.txt

    此文本主要是关于ibatis总配置和映射配置和一些需要主要的细节。

    ibatis源码

    3. emis05(iBATIS+Oracle).zip:这个项目特别提到了Oracle数据库,表明Ibatis在处理Oracle特定的SQL特性时,如PL/SQL、游标等,依然表现得游刃有余。Ibatis的灵活性使其能够适应各种数据库,包括Oracle、MySQL、SQL ...

    ibatis总结 ibatis ibatis ibatis ibatis

    - 在编写SQL时,应避免使用全模糊匹配`LIKE '%text%'`,而应尽可能使用带有前缀或后缀的模糊匹配,如`LIKE 'text%'`,这可以显著提升查询效率。 - 使用`EXISTS`子查询通常比直接关联查询更高效,尤其是在数据量大...

    ibatis所需架包

    使用Ibatis时,开发者需要完成以下步骤: 1. 添加依赖:将Ibatis的JAR文件或者对应的Maven/Gradle依赖添加到项目中。 2. 配置SqlSessionFactory:这是Ibatis的核心组件,负责创建SqlSession对象,可以通过XML配置...

    ibatis 相关使用文档及安装包ibatis 相关使用文档及安装包

    使用iBATIS时,首先需要在项目中引入iBATIS库,然后创建数据库配置文件(如`sqlmap-config.xml`),在此文件中定义数据源和事务管理器。接着,编写SQL Map文件,其中包含具体的SQL查询和存储过程。在Java代码中,...

    SPRING IBATIS 保留IBATIS事务的配置方式

    4. **提交或回滚事务**:根据业务逻辑的需要决定是否提交事务,或者在出现异常时回滚事务。 ```java if (/* 业务成功 */) { tx.commit(); } else { tx.rollback(); } ``` ### 总结 通过以上配置和代码...

    Mybatis报错: org.apache.ibatis.exceptions.PersistenceException解决办法

    在使用Mybatis框架进行数据库操作时,可能会遇到`org.apache.ibatis.exceptions.PersistenceException`这样的异常,这通常是由于多种原因导致的。下面将详细分析这个错误的原因并提供相应的解决办法。 一、错误描述...

    ibatis应对批量update

    ### ibatis应对批量update 在处理大量数据更新时,传统的for循环方式往往会导致效率低下。这是因为每一次循环都需要执行一次数据库连接操作,对于批量更新来说,这样的处理方式显然不够高效。为了解决这个问题,...

Global site tag (gtag.js) - Google Analytics