MySQL数据库之JDBC入门

今天我们一起入门JDBC


1)什么是JDBC

JDBC(Java DataBase Connectivity)就是 Java 数据库连接,说白了就是用 Java 语言来操作数据库。原来我们操作数据库是在控制台使用 SQL 语句来操作数据库,JDBC 是用 Java 语言向数据库发送 SQL 语句。


2)JDBC原理 

JDBC 是接口,而 JDBC 驱动才是接口的实现,没有驱动无法完成数据库连接!每个数据库厂商都有自己的驱动,用来连接自己公司的数据库。

当然还有第三方公司专门为某一数据库提供驱动,这样的驱动往往不是开源免费的!

640?wx_fmt=jpeg


JDBC的开发步骤1)注册驱动

注册驱动就只有一句话:Class.forName(“com.mysql.jdbc.Driver”)

有时间的小伙伴自己去查一下资料吧~

2)获取连接

获取连接的也只有一句代码:DriverManager.getConnection(url,username,password)。


其中 username 和 password 是你登录数据库用户名密码

url 是用来找到数据库地址


mysql 的 url 为:

jdbc:mysql://localhost:3306/mysql_2。


JDBC 规定 url 的格式由三部分组成,每个部分中间使用冒号分隔。

第一部分是 jdbc,这是固定的;

第二部分是数据库名称,那么连接 mysql 数据库,第二部分就是 mysql

第三部分是由数据库厂商规定的,我们需要了解每个数据库厂商的要求,mysql 的第三部分分别由数据库服务器的IP地址(localhost)端口号(3306),以及需要连接的数据库的名称组成。

   

还可以在 url 中添加参数如下:

jdbc:mysql://localhost:3306/mysql_2?useUnicode=true&characterEncoding=UTF8

useUnicode 参数指定这个连接数据库的过程中,使用的字节集是 Unicode 字节集;

characherEncoding 参数指定穿上连接数据库的过程中,使用的字节集编码为 UTF-8 编码。


注意:

mysql 中指定 UTF-8 编码是给出的是 UTF8,而不是 UTF-8。要小心了!

 

3)获取SQl语句的执行对象

在得到 Connectoin 之后,说明已经与数据库连接上了,下面是通过Connection 获取 Statement 对象的代码:

Statement st = con.createStatement();

Statement 是用来向数据库发送要执行的SQL语句的!


执行 SQL 语句:

executeUpdate() 

执行 insert、update、delete 语句(DML语句)。


executeQuery() 

执行 select 语句(DQL语句)。


execute() 方法的返回值是 boolean 类型的。

执行 select 语句返回 true ,需要使用 getResultSet() 获取查询结果。

执行其他语句返回 false,需要使用 getUpdateCount() 获得影响的行数。


4)处理结果集

在 ResultSet 类中提供了一系列的 getXXX() 方法,比较常用的方法有:

getObject(int col),获得任意对象

getString(int col),获得字符串

getInt(int col),获得整形

getDouble(int col),获得双精度浮点型


5)释放资源

与 IO流 一样,使用后的资源都需要关闭!关闭的顺序是先得到的后关闭,后得到的先关闭。

rs.close();

stmt.close();

con.close();


上面的这些内容看的有点蒙

那么现在操作一下:


1)导入mysql数据库的驱动jar包:

mysql-connector-java-5.1.39-bin.jar;

640?wx_fmt=png


按照上面介绍的步骤编写代码:

640?wx_fmt=jpeg


现在来测试一下代码

640?wx_fmt=png


今天先到这里了~

后面的知识

我们下次再说了


640?wx_fmt=jpeg

我是萌新娜娜

立志做一个不翻车的老司机

学习Java的路上请多多指教


扩展阅读

Java面试题31.jdbc调用存储过程

Java面试题33.写一个jdbc的访问oracle的列子

BAT五十五道 MySQL面试题总结!


来源:Java联盟

文章来源网络,版权归作者本人所有,如侵犯到原作者权益,请与我们联系删除或授权事宜

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页