阅读 209

mybatis中如何传递单个String类型的参数

这篇文章主要介绍了mybatis中如何传递单个String类型的参数,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

目录
  • 如何传递单个String类型的参数

  • mybatis仅传入一个String类型参数报错  

    • 目前我知道有两种方式解决问题

如何传递单个String类型的参数

使用mybatis接口参数只有一个string的时候 如果不指定@Param 的话mybatis去会把parameterType参数默认成接口的参数类型然后对于xml里的#{a}参数 去调用该类型下参数a 的get/set方法然后就报错了。

使用了@Param注解 mybatis就会一一对应赋值就不会导致这个错误。

接口如下:

在这里插入图片描述

xml文件如下:

在这里插入图片描述

报错如下:

在这里插入图片描述

改成如下就可以了:

在这里插入图片描述


mybatis仅传入一个String类型参数报错  

mybatis中仅传入一个String类型参数时,不可以用 以下方式

1
List<Map<String,Object> selectEmployee(String time)

这种方式传参会报错:

There is no getter for property named 'id' in class 'java.lang.String'

目前我知道有两种方式解决问题

1.用 _parameter

1
2
3
<if test="_parameter !=null and _parameter !=''">   
         DATE_FORMAT( dms.statistic_date, '%Y-%m' ) = #{_parameter,jdbcType=VARCHAR}
</if>

2.在mapper中参数加上@Param注解

1
List<Map<String,Object> selectEmployee(@param("time") String time)

以上为个人经验,希望能给大家一个参考

原文链接:https://blog.csdn.net/jdfk423/article/details/85316753


文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐