mybatis中当需要查询的表不确定的时候

mybatis当我要查询的表不确定的时候,我能不能把表名像参数一样写成#{},如果可以的话,请问要怎么做呢,万分感谢

用${}
例如:
select * from ${tableName} where id = 1

那你可以试一下这种方法


@Autowired
    private SqlSessionTemplate sqlSessionTemplate;

    /**
     * @param executeSql 要执行的sql
     * */
    private  int query(String executeSql) {
        int num = 0;
        try (SqlSession sqlSession = sqlSessionTemplate.getSqlSessionFactory().openSession();
             PreparedStatement preparedStatement = sqlSession.getConnection().prepareStatement(executeSql);
             ResultSet resultSet = preparedStatement.executeQuery()) {
            if (resultSet.next()){
                num = resultSet.getInt(1);
            }
        } catch (Exception e) {
            logger.error("异常 ", e);
        }
        return num;
    }

面试的时候 没人问过你 ${} 和 #{} 的区别吗

用${},把表名当成一个变量传过来就行了