防止sql注入等的危险
2016-04-05 00:00
459 查看
摘要: 防止sql注入,使用?占位符并结合 PreparedStatement 并设置参数,避免使用串联字符串
@Test public void testLogin2() throws Exception { Connection con = ConnUtils.getCon(); Scanner sc = new Scanner(System.in); String name = sc.nextLine(); String pwd = sc.nextLine(); //使用?占位符,不能用串联字符串 String sql ="select * from users where name=? and pwd=?"; //执行sql语句使用 PreparedStatement pst = con.prepareStatement(sql); pst.setString(1, name); pst.setString(2, pwd); System.err.println(sql); ResultSet rs = pst.executeQuery(); if(rs.next()){ System.err.println("登录成功"); }else{ System.err.println("用户名或是密码错误.."); } pst.close(); con.close(); }
相关文章推荐
- sql 整理
- Navicat for Oracle的表触发器有哪些属性
- 谈谈Navicat for Oracle 表栏位的使用
- 如何还原Navicat for SQL Server的备份数据
- mongodb sharding集群配置
- mongodb shard集群扩容和收缩
- 编译安装redis
- redis 动态修改配置
- 转- OS X 下 TAR.GZ 方式安装 MySQL
- Mac OS X 下 TAR.GZ 方式安装 MySQL 5.7
- 当MySQL服务突然消失的时候
- redis 该端口,设置认证
- mysql5.7 版本中 timestamp 不能为零日期 以及sql_mode合理设置
- 设置MYSQL数据库编码为UTF-8
- redis常见性能问题和解决方案?
- 跟我一起学习MySQL技术内幕(第五版):(第一章学习日记7下)
- Memcached Client简要介绍
- SQL语句order by两个字段同时排序。
- mysql中文乱码
- 跟我一起学习MySQL技术内幕(第五版):(第一章学习日记7上)