Java-day19

JDBC数据库编程

JDBC(Java Database Connectivity),Java数据库连接技术

        官方JDK中提供的与JDBC有关的API都在Java.sql包里面

        API(Application Programming Interface)

        API是三方库中一系列类和接口中方法的集合

        调用API指的就是三方库中代码

注册mysql的驱动

        需要让mysql驱动包中的Driver类发生类加载即可 

        Class.forName(String):这个方法是JDK提供的专门用于类加载的方法,参数是类的路径的字符串,必须是全路径"包名+类型"

        该方法会抛出有个编译时异常,ClassNotFoundException

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

        DriverManager.getConnection()方法是用来建立client-server之间的TCP连接的方法

        有三个参数        1、url连接地址字符串;2、用户名;3、密码

        url字符串的格式:

                协议//IP:端口/数据库名称?参数名和参数值

                1、 (必须有)协议部分        "jdbc:mysql://"

                        Client与server之间的通信协议是TCP/IP

                        传输的内容的协议是jdbc://mysql://

                2、(必须有)IP:端口        "localhost:3306"

                        ip是服务端所在的及其的ip地址

                        服务端在本地可以写localhost,如果不在本都,必须写对方的ip地址,端口默认是3306

                3、(必须有)数据库名称        "test"

                        mysql允许一个数据库服务端创建多个数据仓库

                        在建立CS连接的时候必须指定具体连接的仓库名称

                        如果指定的仓库名称不存在,连接会失败

                4、(可选)连接参数        用?拼接的部分

                        每一组参数都是kv结构        k=v,k是参数名,v是参数值

                        可以有多组,多组之间用&拼接

参数名参数值说明
useUnicodetrue

是否采用Unicode编码集传输数据

如果不设置,默认是拉丁文,那么中文传输可能会乱码

characterEncodingutf-8使用Unicode中的utf-8这个版本的字符集
useSSLfalse是否使用SSL证书进行安全认证
serverTimezone

如果客户端所在城市与服务端所在城市的时区不一样,可能会出现时间错乱的情况

可以通过这个参数来设置服务端的时区

Java第19天整理

        1、整理JDBC编程的流程

 

        1、安装数据库驱动jar包;

        2、加载驱动类、注册驱动

                使用Class.forName("驱动类路径");

        3、创建数据库连接:

                DriverManager.getConnection()         建立连接

        4、写SQL语句用?作为占位符代替值

                

         5、预编译SQL语句 

                

        6、设置SQL语句中的?处的值

        7、增删改查

                增:

                        

                改:

                        

                 删:

                        

                查:

         2、整理mysql的几大模块

                        1、连接器模块--负责客户端连接、用户名和密码校验、权限分配等

                        2、分析器模块--将客户端发过来的SQL语句进行分析

                        3、优化器模块--将符合MySQL的标准语义规则的SQL语句进行优化

                        4、执行器模块--API调用存储引擎,创建SQL语句执行计划

                        5、存储引擎模块--运行执行计划

                        6、缓存(为什么被弱化了)--主要为了提升查询的效率,之所以删除掉,是因为查询缓存的失效非常频繁。

         3、整理CRUD的语法

                        1、增:

                2、改:

                3、 删

                4、查

        4、url连接字符串的组成部分和格式

                 

                        DriverManager.getConnection()方法是用来简历client-server之间的TCP连接的方法

                        有三个参数        1、url连接地址字符串;2、用户名;3、密码

                        url字符串的格式:

                        协议//IP:端口/数据库名称?参数名和参数值

                                1、 (必须有)协议部分        "jdbc:mysql://"

                                        Client与server之间的通信协议是TCP/IP

                                        传输的内容的协议是jdbc://mysql://

                                2、(必须有)IP:端口        "localhost:3306"

                                        ip是服务端所在的及其的ip地址

                                        服务端在本地可以写localhost,如果不在本都,必须写对方的ip地址,端口默认是3306

                                3、(必须有)数据库名称        "test"

                                        mysql允许一个数据库服务端创建多个数据仓库

                                        在建立CS连接的时候必须指定具体连接的仓库名称

                                        如果指定的仓库名称不存在,连接会失败

                                4、(可选)连接参数        用?拼接的部分

                                        每一组参数都是kv结构        k=v,k是参数名,v是参数值

                                        可以有多组,多组之间用&拼接

参数名参数值说明
useUnicodetrue

是否采用Unicode编码集传输数据

如果不设置,默认是拉丁文,那么中文传输可能会乱码

characterEncodingutf-8使用Unicode中的utf-8这个版本的字符集
useSSLfalse是否使用SSL证书进行安全认证
serverTimezone

如果客户端所在城市与服务端所在城市的时区不一样,可能会出现时间错乱的情况

可以通过这个参数来设置服务端的时区

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值