JDBC基本流程:
1.加载驱动(选择数据库)
2.获取连接(与数据库建立连接)
3.准备SQL
4.构建处理块(封装发送SQL)
5.发送SQL,得到结果
6.处理结果
7.连接关闭
JDBC基本流程优化
1.异常的捕获
2.软编码方式定义数据库的参数信息
用户基本操作:
用户注册 insert
用户登录 select
根据用户名与密码同时查找,找到结果返回true,没找到结果返回false
根据用户名查找,找到密码与用户号输入的密码比较是否相等,返回true|false
修改用户数据 update
注销用户 delete
注意: 事务默认自动提交
预处理块:
1.预先编译,提高效率
2.防止SQL注入
sql语句不是通过字符串的连接符直接拼接,而是通过预处理块内部拼接,拼接之前检查传入的数据
注意: 建议使用预处理块代替静态处理块
JDBC封装工具类
加载驱动
获取连接
资源关闭
Statement和PreparedStatement的异同及优缺点
同:两者都是用来执SQL语句的
异:PreparedStatement需要根据SQL语句来创建,它能够通过设置参数,指定相应的值,不是像Statement那样使用字符串拼接的方式。
PreparedStatement的优点:
1、其使用参数设置,可读性好,不易记错。在statement中使用字符串拼接,可读性和维护性比较差。
2、其具有预编译机制,性能比statement更快。
3、其能够有效防止SQL注入攻击。
execute和executeUpdate的区别
相同点:二者都能够执行增加、删除、修改等操作。
不同点:
1、execute可以执行查询语句,然后通过getResult把结果取出来。executeUpdate不能执行查询语句。
2、execute返回Boolean类型,true表示执行的是查询语句,false表示执行的insert、delete、update等。executeUpdate的返回值是int,表示有多少条数据受到了影响。