思路
当遇到大数据量的时候,一张表水平切分,分成多张表来共同存储这种数据。
那么此时我们就需要动态来设置这个表名。此处只能用${}传参。
目录
1.接口
/**
* 查询指定表中的数据
*/
List<User> getUserByTableName(@Param("tableName") String tableName);
2.Mapper映射文件
<!-- List<User> getUserByTableName(@Param("tableName") String tableName);-->
<select id="getUserByTableName" resultType="User">
select * from ${tableName}
</select>
3.测试类
@Test
public void testGetUserByTableName(){
SqlSession sqlSession = SqlSessionUtils.getSqlSession();
SqlMapper mapper = sqlSession.getMapper(SqlMapper.class);
List<User> a = mapper.getUserByTableName("t_user");
a.forEach(user-> System.out.println(user));
}