`

Mybatis中传参包There is no getter for property named 'XXX' in 'class java.lang.Strin

阅读更多

来自于:http://blog.csdn.net/woshixuye/article/details/8820387

一、发现问题

 

<select id="queryStudentByNum" resultType="student" parameterType="string">  

select num,name,phone from student  
<where> 
<if test = " num!=null and num!='' ">
AND num = #{num}
</if>
</where>
</select> 
Mybatis查询传入一个字符串传参数,报There is no getter for property named 'num' in 'class java.lang.String'。


二、解决问题

 

<select id="queryStudentByNum" resultType="student" parameterType="string">  

select num,name,phone from student  
<where> 
<if test = " _parameter!=null and_parameter!='' ">
AND num = #{_parameter}
</if>
</where>
</select>
无论参数名,都要改成"_parameter"。


三、原因分析

 

Mybatis默认采用ONGL解析参数,所以会自动采用对象树的形式取string.num值,引起报错。也可以public List methodName(@Param(value="num") String num)的方法说明参数值

 


 

参考博客:

 

http://blog.sina.com.cn/s/blog_86e49b8f010191hw.html

http://txin0814.iteye.com/blog/1533645

分享到:
评论

相关推荐

    Mybatis单个参数的if判断报异常There is no getter for property named 'xxx' in 'class java.lang.Integer'的解决方案

    然而,当遇到单个参数是基本类型如`java.lang.Integer`或`java.lang.String`时,如果按照处理对象类型的参数方式直接在`&lt;if&gt;`中使用参数名,可能会遇到异常`There is no getter for property named 'xxx' in 'class ...

    使用Mybatis遇到的there is no getter异常

    在使用Mybatis框架进行数据库交互时,偶尔会遇到一个奇怪的问题,即在mapper接口中遇到"There is no getter for property"异常。这个异常的出现原因是由于Mybatis框架在映射实体类的属性时,无法找到对应的getter...

    java.lang.UnsupportedOperationException异常(csdn)————程序.pdf

    `java.lang.UnsupportedOperationException`是Java中的一个运行时异常,它属于`RuntimeException`的子类。这个异常通常在尝试调用一个不支持的操作时抛出。在Java编程中,某些方法可能在特定对象或特定条件下不支持...

    mybatis 分页拦截器及拦截器配置

    MyBatis中的拦截器(Interceptor)是基于Java的动态代理机制实现的,它可以拦截执行SQL的生命周期中的某些环节,如:预处理、结果映射等。在分页拦截器中,它会在执行查询之前对SQL进行修改,自动添加LIMIT和OFFSET...

    如何解决Mybatis--java.lang.IllegalArgumentException: Result Maps collection already contains value for X

    在整合Spring、Struts2和Mybatis的过程中,可能会遇到各种问题,其中之一就是`java.lang.IllegalArgumentException: Result Maps collection already contains value for X`。这个问题通常出现在Mybatis配置文件中,...

    支持条件查询的Mybatis分页插件

    Mybatis PageHelper分页插件是一款广泛使用的Java框架,它为Mybatis提供了强大的分页功能。在使用Mybatis进行数据库操作时,分页查询是非常常见且重要的需求,尤其是在处理大量数据时,避免一次性加载所有结果,提高...

    Mybatis动态传参、日志记录、二级缓存.docx

    &lt;cache type="org.mybatis.caches.EhcacheCache"/&gt; ``` 需要注意的是,为了使用二级缓存,实体类必须实现 Serializable 接口,以便将实体类序列化。 Mybatis 提供了多种功能,包括动态传参、日志记录和二级缓存等...

    总结--Mybatis传递参数的几种方法

    Mybatis 传递参数的几种方法 Mybatis 中传递参数有多种方法,以下是其中的四种: 1. 传递单个参数 在 Mybatis 中,传递单个参数非常简单。可以直接将参数写在方法中,参数类型可以是 String,也可以是基本类型,...

    Mybatis Hello World Demo

    /** finder.mybatis **/ 1、项目摘要:mybatis hello,world demo 2、开发环境:开发工具--&gt;Myeclipse10.0 java环境--&gt;JDK1.6 数据库环境--&gt;Oracle11g Mybatis版本:3.2.2 log4j版本:1.2.17 3、数据库: ...

    Spring3 整合MyBatis3 配置多数据源动态选择SqlSessionFactory详细教程

    import static org.mybatis.spring.SqlSessionUtils.isSqlSessionTransactional; import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; import java.sql.Connection; import java.util....

    mybatis3.4.2jar包和源码.zip

    MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。 标题中的"mybatis3.4.2jar包"指的是MyBatis框架的3.4.2版本的二进制库...

    mybatis中foreach报错:_frch_item_0 not found的解决方法

    在MyBatis中,`&lt;foreach&gt;`标签是用于遍历集合对象并生成SQL语句的重复部分,例如IN语句的括号内元素。然而,当你遇到“_frch_item_0 not found”这样的错误时,通常是由于在使用`&lt;foreach&gt;`时出现了配置或编码上的...

    springmybatis

    sessionFactory 用的,里面主要包含了数据库连接相关东西,还有 java 类所对应的别名,比如 &lt;typeAlias alias="User" type="com.yihaomen.mybatis.model.User"/&gt; 这个别名非常重要,你在 具体的类的映射中,比如User...

    JerseyTestService.zip

    Spring+Jersey+Mybatis小实例,为了搭建这个折腾了两天,其中一天是因为jar包版本引起的,一直报异常:java.lang.AbstractMethodError: javax.ws.rs.core.UriBuilder.uri(Ljava/lang/String;)Ljavax/ws/rs/core/...

    mybatis.jar包

    总之,MyBatis.jar包是Java开发中用于简化数据库操作的重要工具,其最新版本(如3.4.4)提供了一系列的增强功能和优化,使得数据库操作更加高效和灵活。开发者应当根据项目需求选择适合的MyBatis版本,并保持更新以...

    java mybatis.jar包

    标题中的"java mybatis.jar包"指的是MyBatis框架的核心库文件,通常以.jar形式存在,便于在Java项目中导入并使用。这个核心库包含MyBatis框架的所有核心组件,使得开发者能够方便地进行数据访问操作。 描述中的...

    mybatis离线插件包

    MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。 Intelij IDEA是一款广泛使用的Java集成开发环境(IDE),其强大的功能和...

    learn-mybatis-plus:学习mybatis-plus配置,解决save时乱码,解决mybatis映射时日期格式问题。为什么不用mybatis-plus-boot-starter?配置多数据源时,要让spring-boot不自动注入data-source和sqlSessionFactory。

    常问问题1,出现了如下BUG org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'statement' in 'class ...

    mybatis核心包+mysql驱动包+mybatis依赖包(完整).zip

    标题中的"mybatis核心包"指的是MyBatis框架的主要组件,包括MyBatis的核心库,这个库包含了SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession等关键类,它们是MyBatis运行的核心。SqlSessionFactoryBuilder...

    mybatis-反射包注释.7z

    通过`java.lang.Class`类和相关的API,我们可以创建对象、访问私有成员、调用私有方法,以及在运行时检查类的结构。 在MyBatis中,反射主要用于以下几个方面: 1. **动态代理**:MyBatis使用Java的动态代理机制,...

Global site tag (gtag.js) - Google Analytics