首頁> Java> java教程> 主體

jdbc怎麼防止sql注入?

藏色散人
發布: 2020-09-08 10:22:21
原創
7434 人瀏覽過

jdbc怎麼防止sql注入?

JDBC-防止sql注入漏洞

#使用預編譯可有效防止sql的注入漏洞。

原因:在statement中不能夠有效的防止sql的注入漏洞,在於用戶傳入參數的時候可能會傳入一些特殊字元,比如單引號' ' ,或者是-- 這種會影響到我們的sql語句.

所以使用預編譯中的佔位符,也就是?,可以有效的處理這一問題.

public class Prepared { @Test public void papa(){ Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; try{ //注册驱动 // Class.forName("com.mysql.jdbc.Driver"); //建立连接 // conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/user","root","dumy"); conn =JDBCUtils.getConnection(); //编写sql代码 //String sql = "select * from administer where id = ?"; String sql = "select * from administer where username = ? and password =?"; //预编译 pstmt = conn.prepareStatement(sql); //给? 赋值 pstmt.setString(1, "ddd"); pstmt.setString(2, "123"); rs= pstmt.executeQuery(); while(rs.next()){ System.out.println("登录成功"); } }catch(Exception e){ e.printStackTrace(); }finally{ JDBCUtils.release(pstmt, conn, rs); } } }
登入後複製

以上是jdbc怎麼防止sql注入?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!