- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JSPHTML代码规范
1.错误代码
String username = abc;
String sql = select * from t_user where user_name = \’ + username + \’;
Statement stmt = conn.createStatement(sql);
Stmt.executeQuery();
正确代码
1.使用参数绑定方式(推荐)
String username = abc;
String sql = select * from t_user where user_name = ?;
PreparedStatement stmt = conn.prepareStatement(sql);
stmt.setString(1, username);
stmt.executeQuery();
2.使用escapeSQL的方式(如果很难改成参数绑定方式使用该方式)
String username = abc;
String sql = select * from t_user where user_name = \’ + StringUtils.escapeSQL(username) + \’;
Statement stmt = conn.createStatement(sql);
Stmt.executeQuery();
2.错误代码
String username = request.getParameter(user_name);
String userid = request.getParameter(user_id);
String sql = update t_user set user_name = ? where user_id = ?;
PreparedStatement stmt = conn.preparedStatement(sql);
Stmt.setString(1, username);
Stmt.setInt(2, userid);
stmt.executeUpdate();
正确代码
(仅作为参考,不考虑效率以及框架的规范,请参照项目现行的框架规范进行改进)
String username = request.getParameter(user_name);
String userid = request.getParameter(user_id);
if (username == null || username.trim().length() == 0) {
throw new Exception(User name cannot be null.);
}
if (username.getBytes().length 20) {
throw new Exception(Max length of user name is 20);
}
int userId = -1;
try {
userId = Integer.parseInt(userid);
} catch (Exception e) {
throw new Exception(User ID cannot be null and must be a integer.);
}
String sql = update t_user set user_name = ? where user_id = ?;
PreparedStatement stmt = conn.preparedStatement(sql);
Stmt.setString(1, username);
Stmt.setInt(2, userId);
stmt.executeUpdate();
考虑到该修改涉及到的范围基本覆盖所有代码,建议建立新的Form校验解决方案以彻底解决该问题。
1.错误代码
JavaScript中
var url=updateCodeList.do?tableName=+tableName+whereClause=+whereClause;
form.action=url;
form.submit();
Java代码中
String tableName= request.getParameter(tableName);
String whereClause = request.getParameter(“whereClause)
String sql = select * from + tableName + where + whereClause;
//…some db query code
正确代码
JavaScript中
var url = updateCodeList.do?dataSour
文档评论(0)