parameterType 如果有Long 和String 怎么办
时间: 2024-10-24 17:05:26 浏览: 10
MyBatis中传入参数parameterType类型详解
`parameterType` 属性在 MyBatis 的 SQL 映射文件中用于指定传入查询、插入或更新操作的参数类型。如果有 Long 类型和 String 类型的参数,你需要为每个参数都单独定义。例如:
```xml
<select id="selectByParam" parameterType="map">
SELECT * FROM table WHERE id = #{id, typeHandler=LongTypeHandler} AND name = #{name, typeHandler=StringTypeHandler}
</select>
```
这里,`#{id}` 和 `#{name}` 分别对应 Long 和 String 类型的参数,`typeHandler` 属性则指定了处理不同类型数据的转换器(type handler)。对于基本类型如 Long 和 String,通常不需要自定义类型处理器,MyBatis 内置的就能处理。
如果你有两个不同的方法,一个需要 Long 类型的参数,另一个需要 String 类型的参数,那么就需要两个不同的 SQL 映射,分别指定对应的参数类型。
阅读全文