Jdbc

2019-02-25 23:22:20 183

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.选择端口                                                                                                          

mysql SQL 面向对象 数据库 JDBC odbc 插件 Hibernate

作者

死瘦宅
TA的文章

相关文章