阅读量:0
在MyBatis中动态指定列可以使用if标签或者choose标签来实现。下面是一个示例:
<select id="selectUser" parameterType="map" resultType="User"> SELECT <if test="columns != null"> ${columns} </if> <if test="columns == null"> * </if> FROM user </select>
在上面的示例中,使用了if标签来判断传入的参数columns是否为空,如果不为空,则动态指定查询的列,如果为空则查询所有列。传入的参数columns可以是一个字符串,例如"username, age, sex"。
另外,还可以使用choose标签来实现类似功能:
<select id="selectUser" parameterType="map" resultType="User"> SELECT <choose> <when test="columns != null"> ${columns} </when> <otherwise> * </otherwise> </choose> FROM user </select>
通过if标签或者choose标签,可以根据传入的参数动态指定查询的列,从而实现灵活的查询功能。