MySQL的查询操作

一、目标

1、掌握查询操作

2、掌握预编译语句对象操作

二、知识点

1、查询操作

SQL: select * from表名   -->  原始数据表  --> 结果集

JDBC:发送查询SQL语句  -->  数据库实现数据检索--->数据库将结果集反馈给java应用程序 -->将结果集实现封装

API:ResultSet对象:结果集对象(数据表-记录、字段)

//启动驱动包:build path

2、SQL注入攻击

在javaJDBC操作中Statement对象会存在SQL注入攻击的风险,原因在于Statement对象不会进行SQL语句语法的检索。

解决方案:PreparedStatement:预编译SQL语句对象

3、PreparedStatement预编译语句对象

实现:

1、指定SQL语句结构

select * from users where u_name=? and u_password=?

2、设置值

?: 占位符

通过预编译语句对象提供的setXXX方法设置值

ps.setXXX(参数1,参数2);

参数1:表示设置值的占位符索引

参数2:值  


4、Statement和PreparedStatement区别

Statement对象在执行SQL语句的时候不会进行语句语法检索,但执行效率高,安全级别低,一般用于非验证操作。PreparedStatement对象在执行SQL语句之前先指定最终执行的SQL语句语法结构,并且使用占位符完成SQL语句值的传入从而提高语句的安全性,但执行效率低,一般用于验证操作。

5、工程架构

1、数据库工程架构

结构:

1、实体类      --bean

2、数据对象层 --dao层(接口、实现类)

3.conf 配置文件包

4.test包

5.util工具类

//还有jar驱动包

你可能感兴趣的:(MySQL的查询操作)