SQL注入问题的解决(PreparedStatement)

本文通过实例演示如何使用PreparedStatement来防止SQL注入问题。通过预编译SQL语句并设置参数,确保用户输入不会干扰SQL执行,提高代码的安全性。
摘要由CSDN通过智能技术生成

String loginName = userLoginInfo.get(“userLoginName”);

String loginPwd = userLoginInfo.get(“userLoginPwd”);

Connection conn = null;

PreparedStatement ps = null;

ResultSet rs = null;

try {

// 1.注册驱动

Class.forName(“com.mysql.cj.jdbc.Driver”);

// 2.获取连接

conn = DriverManager.getConnection(“jdbc:mysql://127.0.0.1:3306/userdata”,

“root”, “root”);

// 3.获取预编译的数据库操作对象

// SQL语句的框架,其中一个?,表示一个占位符,一个?将来接收一个“值”,注意占位符不能用单引号括起来。

String sql = “select * from t_user where username = ? and userpwd = ?”;// sql语句的框架

// 程序运行到此处,会发送sql语句框架传给DBMS,然后DBMS对sql语句进行预编译。

ps = conn.prepareStatement(sql);

// 给占位符?传值(第一个?下标为1,第二个?下表为2。。。。。。)

ps.setString(1, loginName);

ps.setString(2, loginPwd);

// 4.执行sql语句

rs = ps.executeQu

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值