1
Это мой метод. Как вы можете видеть, я использую собственный sql для выполнения запросов INSERT.Как сделать INSERT более безопасным?
public void addNews(String title, String content) {
Session session = null;
session = this.sessionFactory.getCurrentSession();
Query query = session
.createSQLQuery(
"INSERT INTO news VALUES(NULL,:title,:content,NULL)")
.setString("title", title).setString("content", content);
int updated = query.executeUpdate();
}
Безопасно? Или как я могу улучшить свой метод?
Что делать, если я буду делать '+ идентификатор +' заявление (идентификатор Integer)? – Tony
Тогда, если есть какой-либо способ для пользователя указать id, вы можете «поймать» SQL-инъекцию. Например. Я могу ввести идентификатор ввода: «1 или 1 = 1» и из запроса «Выбрать пользователя, где id =» + id; Я получаю запрос: «Выберите пользователя, где id = 1 или 1 = 1», который возвращает мне всех пользователей – yname
Но '' 1 = 1'' не является Целочисленным, не так ли? – Tony