Использование подготовленного оператора и переменной связывания Order By в Java с драйвером JDBC

м использую

jdbcTemplate для создания соединений JDBC с БД mySQLподготовил операторы, чтобы максимально защитить себя от атак SQL-инъекцийпри необходимости принимать запросы от пользователя на сортировку данных по любому из дюжины разных столбцов

следующее утверждение

jdbcTemplate.query("SELECT * FROM TABLE1 ORDER BY ? ?", colName, sortOrder);

Конечно, это нене работает, потому что привязки переменных неПредполагается указывать имена столбцов только значения параметров для выражений в запросе.

Итак ... как люди решают эту проблему? Простое выполнение сортировки в коде Java кажется простым решением, но так какполучаю переменную строку для столбца для сортировки и переменную, сообщающую мне порядок сортировки .... это 'Ужасное количество условий для сравнения. Похоже, что это должна быть общая проблема с общим шаблоном для ее решения ...

Ответы на вопрос(3)

Ваш ответ на вопрос