fly*_*ire 5 security google-app-engine jdo jdoql
如何在JDO(Google App Engine)中转义查询参数?
例如,如果变量名称可能包含不安全的字符作为单引号('),如何使下一个代码段安全?
PersistenceManager pm = ...;
String query = "select from Person where name='"+name+"'";
List<Shortened> shortened = (List<Shortened>) pm.newQuery(query).execute();
Run Code Online (Sandbox Code Playgroud)
Tod*_*wen 11
相反,使用查询参数,它比包含查询本身中的值更安全.以下是GAE文档中的示例:
Query query = pm.newQuery("select from Employee " +
"where lastName == lastNameParam " +
"order by hireDate desc " +
"parameters String lastNameParam");
List<Employee> results = (List<Employee>) query.execute("Smith");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
757 次 |
| 最近记录: |