在MyBatis的动态SQL中,可以使用构造方法来构建动态SQL语句。具体步骤如下:
public class QueryParam { private String name; private Integer age; // 构造方法 public QueryParam(String name, Integer age) { this.name = name; this.age = age; } // getter 和 setter 方法 }
public interface UserMapper { List<User> getUsersByParam(@Param("param") QueryParam param); }
<select id="getUsersByParam" parameterType="com.example.QueryParam" resultType="com.example.User"> SELECT * FROM users <where> <if test="param.name != null"> AND name = #{param.name} </if> <if test="param.age != null"> AND age = #{param.age} </if> </where> </select>
QueryParam param = new QueryParam("Alice", 25); List<User> userList = userMapper.getUsersByParam(param);
通过以上步骤,可以在MyBatis的动态SQL中使用构造方法来实现动态SQL语句的构建。