mybatisplus 动态子查询表名
时间: 2023-09-01 07:07:10 浏览: 237
动态表名切换java一个Service切换表名;同一个java对象怎么样映射多个数据表名
5星 · 资源好评率100%
MyBatis-Plus支持动态子查询表名,可以通过动态SQL来构建动态子查询表名。以下是一个示例:
```java
@Mapper
public interface UserMapper extends BaseMapper<User> {
@Select("<script>SELECT id, name FROM <choose> <when test=\"tableName != null\"> ${tableName} </when> <otherwise> user </otherwise> </choose> WHERE age = #{age} </script>")
List<User> selectUsersByAge(@Param("tableName") String tableName, @Param("age") Integer age);
}
```
在这个例子中,我们使用了`<choose>`、`<when>`和`<otherwise>`标签来实现动态子查询表名。如果传入的`tableName`参数不为空,则使用该参数作为表名;否则,使用默认表名`user`。
阅读全文