Jdbc

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: jdbc 全称:Java Data Base Connection    以后我们不会直接使用JDBC,因为过于麻烦,后期工程中直接使用包装的数据库操作插件:                                                                      .

jdbc 全称:Java Data Base Connection

  

以后我们不会直接使用JDBC,因为过于麻烦,后期工程中直接使用包装的数据库操作插件:
                                                                                                                                        EJB 实体Bean

                                                                                                                                        Hibernate

                                                                                                                                        Spring数据库持久插件

                                                                                                                                        MyBatis

插件的作用:让我们的操作更面向对象

面向SQL编程:一切尽量用sql解决


java连接数据库过程:java————jdbc——sql语句——MySQL


插件连接数据库过程:java—————操作人员————插件———jdbc————sql——MySQL


插件:改变了呈现方式,将sql包装了起来,你用就用我的对象就行了不用你再去管sql,我们用的就是一个对象。


JDBC:全部都是接口


C语言 DBC      

 VB     ODBC  

                    用的是桥接技术连接数据库

桥接技术:用VB连接odbc再用odbc连接 不同的数据库


假如用VB连接MySQL由你MySQL写驱动 通过VB连接桥接 桥接连接MySQL驱动来实现连接


Java用的是网络连接数据库:jdbc只是接口、实现是数据库公司用Java来写实现。


java想要连接数据库必须有相对应的驱动


驱动是什么:驱动是实现代码


Java通过网络——————————直接连接数据库(要找相对应的驱动)


如何在idea中链接驱动:
                                    

97ff34745a31a6d0986e1536cdf3eeb1f577b2745eff9d0db00d83c520b19a72b19ecaaea26b8691


架包:架包就是一个压缩包

                                        很多的class文件打成的包 、方便别的工程运行



数据库连接步骤:
                           1.找驱动 ? 就是找数据库实现接口代码                     

                           2.把驱动加入到工程中(只有加入进去你的工程才能使用这些代码)

                              举例:我想让Java软件播放视频、需要视频解码器、想连接蓝牙、需要蓝                                                                                                                                         牙连接驱动


                           3.Class.forName("包+类名");  驱动加载(5以上版本的驱动都会自动加载类,所以可以不写这个操作)   

                            反射机制中的类加载

                           会执行静态块

                           加载驱动的目的,就是为了启动他们的静态块,静态块中写了注册了驱动代码

                         

  new com.mysql.cj.jdbc.Driver();创建对象加载类中的静态块代码 静态块中有加载驱动代码

//        Class.forName("com.mysql.cj.jdbc.Driver"); 加载类
                          驱动代码不用谢也可以因为有services中有加载驱动代码 只要加载工程就会启动驱动

                   

                         4.创建数据库连接对象Connection

                         我们用的代码全在java.sql.包下

                          

                         url 数据库连接字符串

                                                         老版本的   jdbc:mysql://localhost:3306/mydb

                                                                                                                                jdbc:mysql 

                                                                                                                               //localhost:3306 端口 IP

                       MYSQL8连接字符串                     

                                                      jdbc:mysql://localhost/student?useSSL=FALSE&serverTimezone=UTC

                      user 数据库用户名

                      password 密码


错误解答:

                1.No suitable driver found for

                      1.工程中没有添加数据库jar包

                      2.连接字符串没有写对 

                      3.如果是老数据库连接,有可能你没有加载驱动类

               2.Access denied for user 'root'@'localhost' (using password: YES)

                  数据库登录密码错误

               3.java.net.ConnectException: Connection refused: connect          

                       网络连接错误

                       1.数据库服务器没有打开

                       2.数据库字符串的端口写错了

                         mysql是默认端口,就算你不写也默认3306

                      3.网络是否通?

                      4.服务器是否有防火墙

                             1.安全组是否拦截3306连接

                             2.操作系统中防火墙是否拦截3306


如何设置windows防火墙              

                                     1.打开控制面板

                                     2.高级设置

                                     3.入站规则       

                                     4.新建规则 

                                     5.选择端口                                                                                                          

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
24天前
|
存储 Java 数据库连接
JDBC简单总结
JDBC简单总结
8 0
|
8月前
|
SQL Oracle 数据可视化
|
8月前
|
SQL Java 关系型数据库
JDBC详解
JDBC详解
|
8月前
|
SQL 人工智能 数据可视化
JDBC的“那些事“之应当注意的问题(上)
JDBC的“那些事“之应当注意的问题(上)
|
8月前
|
SQL 缓存 关系型数据库
JDBC的“那些事“之应当注意的问题(下)
JDBC的“那些事“之应当注意的问题(下)
|
11月前
|
SQL Java 关系型数据库
JDBC介绍
JDBC介绍
83 0
|
Java 数据库连接 测试技术
|
SQL 安全 Java
|
SQL druid Java
jdbc
全称:Java DataBase Connectivity, 意思就是 java连接数据库用到的,用来操作不同数据库的。
105 0
|
SQL Java 关系型数据库