使用jdbc中prepaerdstatement完成对于数据库的查询

JDBC使用preparedStatement对象完成查询:
	案例:
		用户登录功能
	分析:
		a、通过控制台获取用户登录信息到代码
		b、根据用户的登录信息去数据库中查询是否存在该用户信息
		c、根据查询结果判断是否可以登录
	实现:
		使用preparedStatement对象完成
----------------------------------------------------------------------------------------------------------------------------------------		
使用preparedStatement完成查询:
		1、声明jdbc参数
		2、声明jdbc变量
		3、加载驱动
		4、创建连接
		5、创建SQL命令
			如果命令中带有参数,使用?进行占位
		6、创建SQL命令对象
			创建preparedStatement对象,同时将SQL传入
		7、给占位符赋值(可选)
		8、执行SQL命令
		9、处理结果
			使用while循环遍历resultset集合
				创建实例化对象存储数据(使用角标方式或者字段方式)
				将对象存储到集合中
		10、关闭资源	
------------------------------------------------------------------------------------------------------------------------------------
package com.bjsxt.test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Scanner;
import com.sun.org.apache.bcel.internal.generic.CHECKCAST;
/**
 * 登录案例分析问题:
 * 	问题:
 * 		在输入错误的用户名和错误的密码的情况下,只要密码按照一定的规则拼写有可能会登录成功。
 * 	原因:(statement的SQL注入)
 * 		statement对象执行的SQL语句时按照字符串拼接的方式拼接好后再解析执行的,
 * 		被拼接的变量中一旦含有SQL关键字,有极大的可能被作为SQL语句执行了,而不是作为值使用。
 *  解决:
 *  	使用preparedStatement对象完成查询。preparedStatement是Statement的子类对象。
 *  使用:
 *  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值