Jac*_*ter 23 sql scala anorm playframework-2.0
我正在使用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()
}
}
}
Run Code Online (Sandbox Code Playgroud)
我会试图通过黑客行为找出答案,但很容易犯错,所以我觉得要求更合适,我可以借鉴人群的智慧.
par*_*tic 21
根据它的源代码,Anorm只构建java.sql.PreparedStatements,它可以防止这种SQL注入.(有关一般说明,请参阅PreparedStatement维基百科页面)
| 归档时间: |
|
| 查看次数: |
2579 次 |
| 最近记录: |