JDBC(Java Database Connectivity)java数据库连接技术
官方JDK中提供的与JDBC有关的API都在java.sql包里面
API(Application Programming Interface)
API是三方库中一系列类和接口的集合
调用API指的就是调用三方库中代码
注册mysql的驱动
需要让mysql驱动包中是driver类发生类加载即可
Class.forName(String);这个方法是JDK提供的专门用于类加载的方法
参数是类的路径的字符串,必须是全路径“包名+类名”
该方法会抛出一个编译时异常,ClassNotFoundException
DriverManager.getConnection()方法是用来建立client(客户端)-server(服务端)之间的TCP来连接的方法
有三个参数1. url连接地址字符串 2. 用户名 3. 密码
url字符串格式
协议//IP:端口/数据库名称?参数名和参数值
1,【必须有】协议部分“jdbc:mysql://”
Client与Server之间的通信协议是TCP/IP。传输内容的协议是jdbc:mysql://
2,【必须有】IP端口“local host:3306”
IP是服务端所在的机器的IP地址
服务端在本地可以写localhost,如果不在本地,必须写对方的IP地址
端口默认是3306
3,【必须有】数据库名称“test”
mysql允许一个数据库服务端创建多个数据仓库
在建立CS连接的时候必须指定具体连接的仓库名称
如果指定的仓库名称不存在,连接会失败
4,【可选】连接参数
每一组参数都是 kv 结构 k=v,k是参数名,v是参数值
可以有多组,多组之间用&拼接
参数名 | 参数值 | 说明 |
useUnicode | true | 是否采用unicode编码集传输数据 如果不设置,默认是拉丁文,那么中文传输可能会乱码 |
characterEncoding | utf-8 | 使用unicode中的utf-8这个版本的字符集 |
useSSL | false | 是否使用SSL证书进行安全验证 |
server Timezone | 如果客户端所在城市与服务端所在城市的时区不一样,可能会出现时间错乱的情况 可以通过这个参数来设置服务端的时区 |
一些常见的错误 :
JDBC编程流程