---
title: 如何在mybatis中使用in
date: 2020-04-16 09:59:59
tags: ['mybatis','in']
---
## 数据处理:
因为要使用in语句来执行,我们的大致sql语句如下
`update table set column = x where id in (1,2,3)`
所以提前准备好1,2,3这样的数据,大致代码如下:

使用lang3包join即可转换为这种格式
## 数据获取
这里数据获取就是mybatis的一个坑,如果使用#{param} 那么会出现这种sql
`update table set column = x where id in ('1,2,3')`
括号里面出现了引号,这肯定不是我们想要的,那么考虑使用$符号来获取数据,于是如下
`There is no getter for property named '*' in 'class java.lang.String`
发生了错误:
## 解决方案
在mapper参数前加上@Param("param") 注解,最后再使用$获取参数即可