阅读量:0
是的,Mybatis支持动态切换OrderBy排序。在Mapper.xml中可以使用if语句来判断条件,根据条件动态拼接OrderBy语句。例如:
<select id="selectUsers" parameterType="map" resultType="User"> SELECT * FROM users <if test="orderBy != null and orderBy != ''"> ORDER BY ${orderBy} </if> </select>
在调用查询方法时,可以传入一个包含orderBy参数的Map来动态指定排序方式,如:
Map<String, Object> params = new HashMap<>(); params.put("orderBy", "age DESC"); List<User> users = sqlSession.selectList("selectUsers", params);
这样就可以根据传入的orderBy参数动态切换排序方式。