Лучшая практика создания безопасного/неиспорченного SQLJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Лучшая практика создания безопасного/неиспорченного SQL

Сообщение Anonymous »

Как лучше всего создавать операторы SQL, которые не будут считаться небезопасными или испорченными?
Когда я использую JdbcTemplate/JdbcClient, мне нравится определять константы SQL и конструировать операторы следующим образом:

Код: Выделить всё

    public static final String TABLE_NAME = "USERS";
public static final String COLUMN_ACCOUNTID = "ACCOUNTID";
public static final String SELECT_BY_ACCOUNTID =
"SELECT * FROM " + TABLE_NAME + " WHERE " + COLUMN_ACCOUNTID + "=?";
IntelliJ предупреждает, что использование SQL небезопасно:

Код: Выделить всё

    public Optional getUserByAccountId(String accountId) {
return jdbcClient
// IntelliJ warns that this string is unsafe:
.sql(UserSql.SELECT_BY_ACCOUNTID)
.query(new UserMapper())
.param(accountId)
.optional();
}
Как можно составить оператор SQL так, чтобы он не считался небезопасным?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»