preparestatement是怎么防止sql注入的

lewis 2018-11-14 21次阅读

preparestatement防止sql注入的方法:

当使用PreprareStatement时,即使参数里有敏感字符如or '1=1',数据库也会作为一个参数一个字段的属性值来处理,而不会作为一个SQL指令来执行,用法示例:

String sql="update cz_zj_directpayment dp"+

"set dp.projectid = ? where dp.payid= ?";

try {

PreparedStatement pset_f = conn.prepareStatement(sql);

pset_f.setString(1,inds[j]);

pset_f.setString(2,id);

pset_f.executeUpdate(sql_update);

}catch(Exception e){

//e.printStackTrace();

logger.error(e.message());

}



发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。