本帖最后由 账号随机生成 于 2018-5-21 11:36 编辑
JDBCJDBC概述JDBC的入门JDBC环境准备创建数据库和表创建项目引入jar包- 在explpse中创建项目
- 在项目中创建一个名为lib的文件夹
- 将jar包复制到lib的文件夹中
- 右键Build Path,然后奶一下
JDBC的开发步骤
JDBC的API详解之DriverManagerDriverManager:驱动管理类- 作用一: 注册驱动 * static void registerDriver(Driver driver) 向 DriverManager 注册给定驱动程序。 ( 这个方法可以完成驱动的注册,但是实际开发中一般不会使用这个方法完成驱动的注册!!! ) 原因:如果需要注册驱动,就会使用DriverManager.registerDriver(new Driver()); ,但是查看源代码发现在代码中有一段静态代码块,静态代码块已经调用了注册驱动的方法.如果在手动调用该方法注册驱动,就会导致驱动被注册两次. * Class.forName("com.mysql.jdbc.Driver");在实际开发中一般会采用
- 作用二: 获得连接
- static Connection getConnection(String url, String user, String password) 试图建立到给定数据库 URL 的连接. 这个方法就是用来获得与数据库连接的方法;这个方法中有三个参数:
- url :与数据库连接的路径
- user :与数据库连接的用户名
- password :与数据库连接的密码
主要关注的是url的写法:jdbc:mysql://localhost:3306/web_test3- jdbc :连接数据库的协议.
- mysql :是jdbc的子协议.
- localhost :连接的 MySQL 数据库服务器的主机地址.(连接是本机就可以写成localhost),如果连接不是本机的,就需要协商连接主机的IP地址.
- 3306 ;MySQL 数据库服务器的端口号.
- web_test3 :数据库的名称.
url如果连接的是本机的路径,可以简化为如下格式: jdbc:mysql:///web_test3JDBC的API详解之ConnectionConnection: 与数据库连接对象- 作用一:创建执行SQL语句的对象
- Statement createStatement() 创建一个 Statement 对象来将 SQL 语句发送到数据库。
- CallableStatement prepareCall(String sql) 创建一个 CallableStatement 对象来调用数据库存储过程。
- PreparedStatement prepareStatement(String sql) 创建一个 PreparedStatement 对象来将参数化的 SQL 语句发送到数据库。
执行SQL语句对象: [td]执行SQL语句对象 | ----------- | Statement | 执行SQL | allableStatement | 执行数据库中存储过程. | PreparedStatement | 执行SQL对SQL进行预处理,解决SQL注入的漏洞. |
- 作用二:管理事务
- void setAutoCommit(boolean autoCommit) 将此连接的自动提交模式设置为给定状态。
- void commit() 使所有上一次提交/回滚后进行的更改成为持久更改,并释放此 Connection 对象当前持有的所有数据库锁。
- void rollback() 取消在当前事务中进行的所有更改,并释放此 Connection 对象当前持有的所有数据库锁。
JDBC的API详解之StatementStatement:执行SQL- 执行SQL的方法:
- boolean execte(String sql); 执行查询,修改,添加删除的SQL语句.
- ResultSet executeQuery(String sql); 执行查询(执行select语句).
- int executeUpate(String sql); 执行修改,添加,删除的SQL语句.
- 作用二: 执行批处理
- void addBatch(String sql) 添加到批处理
- void clearBatch() 清空批处理
- int[] executeBatch() 执行批处理,一次可以执行很多条
JDBC的API详解之ResultSetResultSet:结果集通过select语句的查询结果.结果集的遍历- boolean next() 将光标从当前位置向前移一行。
结果集的获取- 结果集获取可以使用结果集中的:
- getXXX;方法通常都会有一个重载的方法.
- getXXX(int columnlndex);
- getXXX(String columnName);
JDBC的资源释放JDBC 程序执行结束后,将与数据库进行交互的对象释放掉,通常是ResultSet,Statement,Connection. 这几个对象中尤其是Connection 对象是非常稀有的.这个对象一定要做到尽量晚创建,尽早释放掉.- 将资源释放的代码写到finally的代码块中.
- 资源释放的代码要写的标准;
JDBC的CRUD操作之PreparedStatement 的保存操作
|