jdbc1

来源:互联网 发布:mac搜狗输入罗马数字 编辑:程序博客网 时间:2024/06/14 09:37

今天内容都很重要

一、JDBC简介

JDBC:Java DataBase Connectivity

数据JavaEE开发技术之一

相关的API在JDK中:java.sql.*   javax.sql.*

作用:编写数据库相关代码有一个统一标准。

还需要数据库的驱动

JDBC与数据库驱动是什么关系?数据库驱动实现了JDBC规范。

二、JDBC的编码步骤

0、搭建开发环境:把数据库驱动jar包加入到应用的构建路径(classpath)

1、注册驱动

2、获取与数据库的连接

3、创建代表SQL语句的对象

4、执行SQL语句

5、如果执行的查询语句,返回结果集,遍历结果集

6、释放占用的资源

三、JDBC中常用接口或类详解

1、DriverManager:

1.1注册驱动

方式一:DriverManger.registDriver(newcom.mysql.jdbc.Driver());

不建议使用:依赖具体的数据库驱动;导致驱动注册2次;

方式二(推荐):Class.forName(“com.mysql.jdbc.Driver”);

1.2获取与数据库的连接

方式一:

DriverManager.getConnection(String url,String username,Stringpassword);

url:数据库厂商和JDBC之间的协议

具体的url地址参考数据库的说明文档

url用于标识数据库的位置,程序通过URL地址告诉JDBC程序连接哪个数据库,URL的写法为:

jdbc:mysql://localhost:3306/day15

jdbc:mysql:[]//localhost:3306/test?参数名=参数值

jdbc:协议

mysql:[]子协议,一般是数据库厂商的名称

localhost:连接的主机

3306:端口号

test:数据库

如果你连接的是本机的3306端口也就是默认时,Mysql可以简写为:jdbc:mysql:///day15

方式二:

DriverManager.getConnection(String url,Properties props);

props:

数据库的一些参数配置

方式三:

DriverManager.getConnection(String url);

2、Connection:4天中都会用

StatementcreateStatement();创建代表SQL语句的对象

3、Statement

ResultSetexecuteQuery(String sql):sql一定要用查询语句;专门用来执行查询的

intexecuteUpdate(String sql):sql一般为DML(INSERT DELETEUPDATE)语句,不能执行查询语句;返回值是该条语句影响到的行数。

booleanexecute(String sql):sql可以是任意语句。如果是查询语句,有结果集,返回是true;否则就是false。特别注意:并不是成功与否。

 


4、ResultSet


boolean next();

booleanprevious();向上移动游标

booleanabsolute(int count);//第一条记录就是

voidbeforeFirst()把游标移动到第一行的前面p

void afterLast()把游标移动到最后一行的后面

四、JDBC中释放资源

五、JDBC进行CRUD

 

改写原来的用户注册和登录案例

六、PreparedStatement接口

1、防注入

2、支持SQL语句的预编译

3、支持参数的占位符   占位符“?”

 

日后:尽量使用PreparedStatement

 

 

七、案例:JavaWeb客户信息管理(MVC+三层架构)

 

1 0
原创粉丝点击