温馨提示×

mybatis多个参数传递的方法是什么

小亿
84
2024-01-02 11:16:47
栏目: 编程语言

在MyBatis中,有多种方法可以传递多个参数:

  1. 使用Map或者@Param注解:可以将多个参数放入一个Map中,或者使用@Param注解为每个参数起一个名称,然后在SQL语句中通过名称引用参数。

例如,使用Map传递多个参数:

Map<String, Object> params = new HashMap<>();
params.put("param1", value1);
params.put("param2", value2);
List<ResultType> result = sqlSession.selectList("namespace.statement", params);

或者使用@Param注解传递多个参数:

List<ResultType> result = sqlSession.selectList("namespace.statement", @Param("param1") value1, @Param("param2") value2);

在SQL语句中,可以使用${param1}${param2}来引用参数。

  1. 使用POJO对象:可以将多个参数封装成一个POJO对象,在SQL语句中直接引用POJO的属性。

例如,定义一个POJO对象:

public class MyParams {
    private String param1;
    private String param2;
    // getters and setters
}

然后在SQL语句中引用POJO的属性:

<select id="statement" parameterType="com.example.MyParams" resultType="com.example.ResultType">
    SELECT * FROM table WHERE column1 = #{param1} AND column2 = #{param2}
</select>

在调用时,将多个参数封装成POJO对象传递:

MyParams params = new MyParams();
params.setParam1(value1);
params.setParam2(value2);
List<ResultType> result = sqlSession.selectList("namespace.statement", params);

这些方法都可以实现多个参数的传递,根据实际场景选择适合的方法即可。

0