阅读量:1
在 MyBatis 中动态表名查询可以通过使用 MyBatis 的动态 SQL 功能来实现。具体实现方法如下:
- 在 Mapper 接口中定义一个方法,传入一个参数作为表名的动态参数:
public interface YourMapper { List<YourDataType> selectDataByTableName(@Param("tableName") String tableName); }
- 在对应的 Mapper XML 文件中编写动态 SQL 语句,通过
<choose>
和<when>
标签来实现根据不同条件选择不同的表名:
<select id="selectDataByTableName" resultType="YourDataType"> SELECT * FROM <choose> <when test="tableName == 'table1'"> table1 </when> <when test="tableName == 'table2'"> table2 </when> </choose> </select>
- 在调用 Mapper 接口方法时,传入具体的表名参数:
YourMapper yourMapper = sqlSession.getMapper(YourMapper.class); List<YourDataType> data = yourMapper.selectDataByTableName("table1");
通过以上步骤,就可以实现在 MyBatis 中根据动态表名进行查询数据的功能。