Я использую Play! а также Anorm для доступа к базе данных. Я часто вижу примеры вроде следующего, где члены объекта вводятся непосредственно в оператор SQL.
Мой вопрос в том, что эти материалы дезинфицированы? Большинство примеров выглядят следующим образом:
object Person {
def save(p:Person) {
DB.withConnection ("default") { implicit connection =>
SQL("""
INSERT INTO person(firstName,lastName)
values ({firstName}, {lastName})
"""
).on(
"firstName" -> p.firstName,
"lastName" -> p.lastName
).executeUpdate()
}
}
}
Я попытаюсь выяснить, как взломать, но легко сделать ошибку, поэтому я подумал, что вопрос более уместен, и я могу опираться на мудрость толпы.