MyBatis中parameterType有什么用?
时间: 2024-05-09 14:15:42 浏览: 103
MyBatis中传入参数parameterType类型详解
在 MyBatis 中,parameterType 是用来指定 SQL 语句中传入的参数类型的。它的作用是告诉 MyBatis 框架,如何将传入的参数转换为对应的 Java 对象,使得 MyBatis 可以正确地将参数传递给 SQL 语句中的占位符。
通常情况下,如果 SQL 语句中只有一个参数,那么 MyBatis 可以自动推断出该参数的类型,这时就不需要显式地指定 parameterType。但是,如果 SQL 语句中有多个参数,或者参数类型不能被自动推断出来,就需要显式地指定 parameterType。
例如,假设有一个 User 类,它有一个 id 字段和一个 name 字段,如果要查询 id 为 1 的用户,可以编写如下 SQL 语句:
```
SELECT * FROM user WHERE id = #{id}
```
这里的 #{id} 是一个占位符,它表示将要传入的参数。如果参数是一个 User 对象,那么需要指定 parameterType 为 User 类型,这样 MyBatis 才能正确地将参数转换为 User 对象,从而正确地执行 SQL 语句。
例如,在 Mapper XML 文件中,可以这样指定 parameterType:
```
<select id="getUser" resultType="User" parameterType="User">
SELECT * FROM user WHERE id = #{id}
</select>
```
这里的 parameterType 属性就指定了传入参数的类型为 User 类型。
阅读全文