前景说明:

在我们刚开始使用数据库的时候,发现只能在mysql编辑器里面使用sql语句来完成对数据库的操作,那我们怎么来通过Java来操控数据库呢?这个时候就有了JDBC的出现

1.什么是JDBC

JDBC 指java数据库连接(Java Database Connectivity),是一种标准的Java应用编程接口( JAVA API),JDBC本质上是Sun公司制定的一套接口(interface)!原来我们操作数据库是在控制台使用SQL语句来操作数据库,JDBC是用Java语言向数据库发送SQL语句来达到操控数据库的功能。

从根本上来说,JDBC 是一种规范,它提供了一套完整的接口,允许便携式访问到底层数据库,因此可以用 Java 编写不同类型的可执行文件,例如:

  1. Java 应用程序
  2. Java Applets
  3. Java Servlets
  4. Java ServerPages (JSPs)
  5. Enterprise JavaBeans (EJBs)

所有这些不同的可执行文件就可以使用 JDBC 驱动程序来访问数据库,这样可以方便的访问数据。JDBC 具有 ODBC 一样的性能,允许 Java 程序包含与数据库无关的代码。

2.连接步骤

1.注册驱动

首先需要导入mysql驱动jar包

第一步:在当前项目下创建一个lib的目录:

第二步:把mysql的驱动jar拷贝到lib目录:

第三步:把lib添加到项目中,作为当前项目的第三方库

 然后找到自己的jar包导入即可

2.加载并连接驱动

注意:加载驱动类就只有一句话:Class.forName("com.mysql.jdbc.Driver"),而且要带上包名,不能只导入Driver,可以使用下面的方法,更快捷准确

 获取连接的也只有一句代码:DriverManager.getConnection(url,username,password),其中username和password是登录数据库的用户名和密码. url查对复杂一点,它是用来找到要连接数据库“网址”,就好比你要浏览器中查找百度时,也需要提供一个url。下面是mysql的url:

举个例子:

String url="jdbc:mysql://localhost:3306/mynbuseUnicode=true&cha
racterEncoding=utf8&useSSL=false";
Connection connection = DriverManager.getConnection(url, "root", "123456");//url:访问数据库服务器的网址//jdbc :协议名 jdbc :mysql://localhost:3306/mytest//username:用户名//password:密码//localhost:mysql服务器的ip地址,本机远程的mysql服务器:真实ip//3306:mysql服务器的默认端口//mytest:访问的那个数据库名称//?k1=v1 :数据库的其他参数

3. 获取数据库操作对象

Statement statement = connection.createStatement();

4.执行sql语句

String sql = "select * from stud";
ResultSet resultSet = statement.executeQuery(sql);
或者
String sql1="insert into zm values('"+t1+"','"+t2+"')";
statement.executeUpdate(sql1);

注意:查询语句是executeQuery() 增删改是executeUpdate() 注意区分 

5.查询结果集

对于executeQuery() 查询结果集有next()方法,跟集合里面的迭代器中的next()方法有点差不多,还有getXXX()方法获取每一列的信息

常用的有以下几种:

        Object getObject(int col)

        String getString(int col)

        int getInt(int col)

        double getDouble(int col)

举例:

String sql = "select * from stud";
ResultSet resultSet = statement.executeQuery(sql);
while(resultSet.next()){int anInt = resultSet.getInt(1);String string = resultSet.getString(2);String string1 = resultSet.getString(3);int anInt1 = resultSet.getInt(4);System.out.println(anInt+" "+string+" "+string1+" "+anInt1);
}

6.关闭资源

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

如果使用的try catch获取异常,关闭注意放入finally语句块中。

完整代码举例:

import org.junit.Test;import java.sql.*;public class TestMySql {public  Connection getConnection() throws Exception {Class.forName("com.mysql.jdbc.Driver");String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&useSSL=false";return DriverManager.getConnection(url, "root", "root");}@Testpublic void insert() throws Exception {Connection con = getConnection();Statement stmt = con.createStatement();String sql = "insert into user values('zhangSan', '123')";stmt.executeUpdate(sql);System.out.println("插入成功!");stmt.close();con.close();}@Testpublic void update() throws Exception {Connection con = getConnection();Statement stmt = con.createStatement();String sql = "update user set password='456' where username='zhangSan'";stmt.executeUpdate(sql);System.out.println("修改成功!");stmt.close();con.close();}@Testpublic void delete() throws Exception {Connection con = getConnection();Statement stmt = con.createStatement();String sql = "delete from user where username='zhangSan'";stmt.executeUpdate(sql);System.out.println("删除成功!");stmt.close();con.close();}@Testpublic void query() throws Exception {Connection con = getConnection();Statement stmt = con.createStatement();String sql = "select * from user";ResultSet rs = stmt.executeQuery(sql);while(rs.next()) {String username = rs.getString(1);String password = rs.getString(2);System.out.println(username + ", " + password);}rs.close();stmt.close();con.close();}
}

JAVA之JDBC连接数据库相关推荐

  1. Java中JDBC连接数据库详解

    今天动力节点java学院小编分享的是JDBC连接数据库的相关知识,希望通过看过此文,各位小伙伴对DBC连接数据库有所了解,下面就跟随小编一起来看看JDBC连接数据库的知识吧. 一.JDBC连接数据库概 ...

  2. Java中JDBC连接数据库(MySQL)

     JDBC连接数据库步骤. 一个简单详细的查询数据的例子. 封装连接数据库,释放数据库连接方法. 实现查询,插入,删除,更新等十一个处理数据库信息的功能.(包括事务处理,批量更新等) 把十一个功能都放 ...

  3. JAVA的JDBC连接数据库以及读取数据库数据

    一.下载数据库JDBC驱动 1.1:Mysql驱动 https://dev.mysql.com/downloads/connector/ 下载得到的是一个压缩包,解压后到里面寻找文件:mysql-co ...

  4. java用JDBC连接数据库的方式

    //驱动位置 String sDBDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //连接数据库地址名字 Stri ...

  5. 关于java用JDBC连接数据库的代码

    留下JDBC的代码以备后用 import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedSta ...

  6. Java配置jdbc连接数据库不限制ip设置方法(localhost/127.0.0.1/本机ip地址)

    jdbc配置连接数据库不限制ip设置方法(localhost/127.0.0.1/本机ip地址(配置)) 说明: 一般新安装的mysql数据库默认是不开启ip访问的 localhost/127.0.0 ...

  7. java使用JDBC连接数据库的几种方式

    2019独角兽企业重金招聘Python工程师标准>>> /** * 1 在方法中固化连接参数 * * @return 数据库连接 */ public Connection getCo ...

  8. java:JDBC连接数据库实现用户管理系统

    实现功能: 1.普通用户注册,登录 2.管理员用户注册,登录 3.管理员对普通用户的查询,添加,修改,删除操作 4.对3实现ID和用户名的两种操作方式 5.对以上功能实现菜单化管理 6.所有用户信息都 ...

  9. JAVA JDBC连接数据库操作的基本步骤

    JAVA中JDBC连接数据库操作的基本步骤.注:假定连接数据库的用户名为root,密码为root. 步骤一: 定义连接数据库的相关信息 步骤一: 定义连接数据库的相关信息(1) 连接数据库的驱动:8. ...

最新文章

  1. java并发vol_java 并发中 volitile、synchronized和lock的比较(一)
  2. 乐视视频 App 图标改为“欠 122 亿”,网友:我在别家分红包,却在你家随份子!...
  3. 图解wordpress3.5.1最简单实现伪静态的方法
  4. 生成学习算法Generative Learning algorithms
  5. 2021高考一诊成绩查询,双流棠湖中学高2021届成都市“一诊”成绩已揭晓
  6. Ivan and Powers of Two CodeForces - 305C(set)
  7. JavaScript错误处理和堆栈追踪浅析
  8. STM32 位带应用
  9. EntityModelStudio系列教程
  10. GB/T 28448-2019 《信息安全技术 网络安全等级保护测评要求》之安全通信网络测评解读
  11. 老Java程序员花2天写了个连连看,我竟连不过我女儿,我了个去!
  12. 英语从句(英语兔学习笔记)
  13. Web验证的过去现在与未来
  14. Spliterator
  15. 【腾讯云新知实验室】一站式提供视频解决方案
  16. AWS免费套餐避坑攻略:查看账户下所有region的资源,及时关停不需要的服务
  17. 如何实现上传多个图片并依次展示_如何在一页PPT中插入多张图片,并保持其美感...
  18. Java SE 基本介绍上
  19. 普通二本,去过阿里外包,到现在年薪40W+的高级测试工程师,我的两年转行心酸经历...
  20. XPS文件如何在线转成Word

热门文章

  1. 渲染静态页面、get请求、post请求、express框架、路由、中间件
  2. 【SharePoint】SharePoint站点模板ID——SharePoint Site Template ID – Microsoft Office 365
  3. 旅游产品销售如何引流?旅游产品如何有效推广
  4. 潮流课设matlab编程,基于MATLAB的电力系统潮流计算课程设计论文
  5. buuctf解题记录
  6. estx matlab,自动控制 LTI系统的MATLAB辅助.ppt
  7. Python学习日记-第二十四天-飞机大战(敌机出场设计)
  8. java开发 使用scala_给Java开发者的Scala教程
  9. 快速提高网站流量的办法
  10. Logistic回归-代价函数求导过程 | 内含数学相关基础