前言:
现时咱们对“maven mysql”大致比较关心,大家都需要学习一些“maven mysql”的相关文章。那么小编在网上搜集了一些对于“maven mysql””的相关文章,希望我们能喜欢,看官们一起来学习一下吧!今日分享开始啦,请大家多多指教~
1.概念:
JDBC,即Java Database Connectivity,java数据库连接。是一种用于执行SQL语句的Java API,它是Java中的数据库连接规范。这个API由 java.sql.,javax.sql. 包中的一些类和接口组成,它为Java开发人员操作数据库提供了一个标准的API,可以为多种关系数据库提供统一访问。
1.1 jdbc工作原理
JDBC 为多种关系数据库提供了统一访问方式,作为特定厂商数据库访问API的一种高级抽象,它主要包含一些通用的接口类。
JDBC访问数据库层次结构:
1.2 JDBC优势:
Java语言访问数据库操作完全面向抽象接口编程
开发数据库应用不用限定在特定数据库厂商的API
程序的可移植性大大增强
2.引入mysql的jar包
首先将mysql-connector-jar包放入项目的lib文件夹下:
建立jar包和项目之间的联系
接下来就可以使用jdbc进行编程了
3.jdbc的使用3.1 首先加载mysql的驱动程序
这里使用Class.forName()加载依赖包,具体是怎么操作的呢?
我们知道Class.forName() 方法要求JVM查找并加载指定的类到内存中,此时将"com.mysql.jdbc.Driver" 当做参数传入,就是告诉JVM,去"com.mysql.jdbc"这个路径下找Driver类,将其加载到内存中。
看看Driver 的源码:
这里new了一个Driver对象传给了registerDriver
看看DriverManager.registerDriver这个方法做了什么:
如果该驱动尚未注册,那么将它添加到 registeredDrivers 中去。
此时,Class.forName(“com.mysql.jdbc.Driver”) 的工作就完成了,工作就是:将mysql驱动注册到DriverManager中去。接下来我们看是怎么进行调用的
3.2 建立数据库和jvm的链接
这里getConnection到底干了什么事情呢?
这里返回的getConnection方法,再看看这里的getConnection。
首先看看这三个参数都代表着什么
在源码的此处用到了url以及info
找到了最终url解释的位置:这里的url指的是数据库的链接,如果驱动器能够解析这个url找到此数据库就返回true。
info对象中保存的是使用数据库的成员和密码;
getConnection的上述源码中首先利用类加载机制加载了mysql’的驱动器,接下来遍历缓存中的驱动器查看是否存在当前驱动,存在就利用驱动进行数据库链接;
url设置:
这里的链接根据不同数据库系统采用不同的协议格式,ip地址选择链接本地的ip地址,也可以是localhost;
3.3 执行sql语句
这里的statement负责执行sql语句:下面看看它到底干了什么
发送参数化的sql语句到数据库;
可以看到这里创建了一个PreparedStatement对象,去执行此操作;
这里执行之后的返回值是ResultSet格式,因此创建一个resultset去承接这个结果即可
3.4 显示查询结果;
今日份分享已结束,请大家多多包涵和指点!
如何获取?
转发分享此文,后台私信小编:“1”即可获取。(注:转发分享,感谢大家)
标签: #maven mysql