JDBC连接过程和源码

JDBC

1.JDBC的概述

Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。JDBC也是Sun Microsystems的商标。我们通常说的JDBC是面向关系型数据库的。

2.包的命名

规范:

​ 1.一般来说 是网站的域名的倒写 baidu.com => com.baidu.jdbc

​ 2.对于个人 我们就可以 com.name.xx com:个人/商用 com.jiang.jdbc

3.JDBC项目创建

手动导入包 很麻烦 所以出现了maven:自动导包的工具

4.JDBC的源码

源码:很复杂,很头疼,很需要耐心

PS: Spring源码 10年 你可能2个小时视频 你写+敲+理解 你3.5

4.1 Class.forName("com.mysql.jdbc.Driver");

当我们点进源码的时候 发现这是一个反射机制

Class<?> forName(String className) 以为这个类里 有最终于数据库连接的方法

Connection connect(String url, java.util.Properties info)

4.2 DriverManager 驱动管理器

没声明 怎么产生的这个管理器?=》在我们第一步导入的Driver类中 有@see

Connection getConnection(String url,String user, String password)
info => java.util.Properties => extends Hashtable<Object,Object> => Map
    info 信息:存放数据库密码账号的集合

为什么要获取 一个连接connection 因为我们要传入我们的用户名和密码和地址

4.3 Statement 声明

Statement对象 其实就是我们sql语句执行的载体

Statement createStatement()
* Creates a <code>Statement</code> object for sending
* parameterized SQL statements to the database.

创建一个statement对象来发送一个sql命令给数据库
select * from .... statement
insert statement
ResultSet executeQuery(String sql) throws SQLException;

5.JDBC属性

import java.sql.*; 可以把sql包所有的东西都导入进来方便使用

1.url : jdbc:mysql://localhost:3306/shop = http://www.mysql.com/shop

​ localhost:本地 3306数据端口

2.private static final 的作用

private final没有关键作用,但是priave会私有更加安全,final会写死了,不会被其他的因素改变值,从而报错

如果前面不写 其实就是默认public

static:静态常量 可以被随便调用

猜你喜欢

转载自www.cnblogs.com/pengcode/p/12561917.html