查询mapper

<!-- 方法 -->
@SelectProvider(type = SqlProviderCheck.class, method = "provideSql")
    List<JSONObject> selectGenerateTable(String sql);

校验类

public class SqlProviderCheck {
    public String provideSql(String sql) {
        // 对输入的 SQL 进行基本安全校验(禁止 DROP、DELETE 等危险操作)
        if (sql == null || sql.trim().isEmpty()) {
            throw new IllegalArgumentException("SQL 不能为空");
        }
        String lowerSql = sql.toLowerCase();
        if (lowerSql.contains("drop") || lowerSql.contains("delete") || lowerSql.contains("alter")) {
            throw new IllegalArgumentException("SQL 包含不安全的操作");
        }
        // 返回传入的 SQL
        return sql;
    }
}