JDBC获取数据库连接
是什么?
JDBC:Java Data Base Connectivity(java数据库连接)
为什么用?
sun公司提供JDBC API接口,数据库厂商来提供实现
我们需要用哪个数据库就加载那个数据库厂商提供的驱动包
怎么用?
- 需要先在数据库中建立表
我的数据库名为db_user,表名为t_user

2.在根目录下创建lib文件夹,导入Mysql驱动程序,接着ctrl+shift+alt+s >> Modules >> 右侧绿色加号 >> JARS >>选择驱动程序
3.写入以下程序:
步骤为:
- 加载数据库驱动程序
- 获取与数据库连接的connection对象
- 获取执行SQL语句的statement对象
- 执行SQL语句,拿到结果集
- 遍历结果集,得到数据
- 关闭连接
package com.zhangwei.test;
import java.sql.*;
public class DBTest {
public static void main(String[] args) {
Connection connection = null;
Statement statement = null;
ResultSet resultSet = null;
try {
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/db_user?useSSL=false", "root", "123456");
//黄色部分为 需要显式禁用SSL设置usessl = false,或设置usessl =true提供服务器证书验证信任库。
statement = connection.createStatement();
resultSet = statement.executeQuery("SELECT * FROM t_user");
while(resultSet.next()){
System.out.println(resultSet.getInt(1));
System.out.println(resultSet.getString(2));
System.out.println(resultSet.getString(3));
System.out.println(resultSet.getString(4));
}
}catch (SQLException e){
e.printStackTrace();
}catch (ClassNotFoundException e){
e.printStackTrace();
}finally{
if(resultSet != null){
try {
resultSet.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(statement != null){
try {
statement.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(connection != null){
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}
运行结果:

需要知道的几个对象
Connection对象:客户端与数据库的交互(DriverManager.getConnection()时返回此对象)
Statement对象:用于向数据库发送Sql语句,实现数据库的增删改查(connection.createStatement()时返回此对象)
Resultset对象:代表SQL语句的执行结果(statement.executeQuery()时返回此对象)
转载自:https://segmentfault.com/a/1190000013293202
JDBC获取数据库连接的更多相关文章
- JAVA jdbc获取数据库连接
JDBC获取数据库连接的帮助类 import java.io.InputStream; import java.sql.Connection; import java.sql.DriverManage ...
- 在IDEA中使用JDBC获取数据库连接时的报错及解决办法
在IDEA中使用JDBC获取数据库连接时,有时会报错Sat Dec 19 19:32:18 CST 2020 WARN: Establishing SSL connection without ser ...
- JDBC获取数据库连接慢
RHEL6.4 获取Oracle数据库链接时快时慢,RHEL7.3获取Oracle数据库链接时一直很慢能够达到五万毫秒. 解决方法: 修改$JAVA_HOME/jre/lib/security/jav ...
- JDBC编程:获取数据库连接
JDBC(Java Database Connectivity),即Java数据库连接.通过JDBC编程,可以使Java应用程序和数据库进行交互. JDBC驱动的方式有很多种,我们常用的驱动方式为:本 ...
- JDBC 学习笔记(四)—— JDBC 加载数据库驱动,获取数据库连接
1. 加载数据库驱动 通常来说,JDBC 使用 Class 类的 forName() 静态方法来加载驱动,需要输入数据库驱动代表的字符串. 例如: 加载 MySQL 驱动: Class.forName ...
- MYSQL 之 JDBC(二): 数据库连接(二)通过DriverManager获取数据库连接
通过DriverManager获取数据库连接 修改一下配置文件 driver=com.mysql.cj.jdbc.Driver jdbcUrl=jdbc:mysql://localhost:3306/ ...
- MYSQL 之 JDBC(一): 数据库连接(一)通过Driver接口获取数据库连接
通过Driver接口获取数据库连接 数据持久化 数据库存取技术分类 JDBC直接访问数据库 JDO技术 第三方O/R工具,如Hibernate,ibatis等JDBC是java访问数据库的基石 JDB ...
- 【JDBC核心】获取数据库连接
获取数据库连接 要素一:Driver 接口实现类 Driver 接口: java.sql.Driver 接口是所有 JDBC 驱动程序需要实现的接口.这个接口是提供给数据库厂商使用的,不同数据库厂商提 ...
- jdbc java数据库连接 3)Statement接口之执行DDL和DML语句的简化
上一章的代码中,可以发现,jdbc执行DDL和DML有几个步骤都是一样的: 1)执行语句开始时,创建驱动注册对象.获取连接的数据库对象.创建Statement对象 // 创建驱动注册对象 Class. ...
随机推荐
- 如何高效的学习WEB前端
IT 行业的变化快是众人皆知的,需要持续去学习新的知识内容.但是,往往我们工作之后,经常发现学习的东西很少了,学习效率非常低,感觉自己到了一个瓶颈期,久而久之,就演变成『一年工作经验,重复去用十年』的 ...
- 2017-12-24 手机编程环境初尝试-用AIDE开发Android应用
前不久才接触到纯粹用手机进行编程的开发者, 当时颇有孤陋寡闻之感, 因为之前听说过手机编程还是一些在线编程学习网站开发的学习环境, 没有想过真的有用它做实际开发的. 此文用AIDE免费版在自己的手机上 ...
- Api管家系列(二):编辑和继承Class
上篇写了个大概,今天我详细说一下参数的编辑,废话不多说 先打开一个项目,我要特别说一下设置里的“默认参数设置” 打开默认参数设置,这里我用红色圈出的tab可以设置请求头,返回头和返回状态,这些设置会在 ...
- spring Boot环境下dubbo+zookeeper的一个基础讲解与示例
一,学习背景 1. 前言 对于我们不管工作还是生活中,需要或者想去学习一些东西的时候,大致都考虑几点: a) 我们为什么需要学习这个东西? b) 这个东西是什么? c) ...
- Ambari安装HDP问题:User root is not allowed to impersonate anonymous.User: hcat is not allowed to impersonate ambari-qa
User root is not allowed to impersonate anonymous 修改hadoop 配置文件 etc/hadoop/core-site.xml,加入如下配置项 < ...
- 【RL-TCPnet网络教程】第41章 HTTP超文本传输协议基础知识
第41章 HTTP超文本传输协议基础知识 本章节为大家讲解HTTP(HyperText Transfer Protocol,超文本传输协议),从本章节开始,正式进入嵌入式Web的设计和学习. ...
- javascript放大镜效果
JS实现放大镜效果 首先我们先设想一下放大镜效果 1.当鼠标进入小盒子的时候,把大图片显示出来 2.当指定移动区域的时候,显示当前放大区域(放大效果) 3.鼠标移除我们让它消失 一.实现页面布局HTM ...
- ES 08 - 创建、查看、修改、删除、关闭Elasticsearch的index
目录 1 创建index(配置mapping[映射]) 2 查看index 3 修改index 4 删除index 5 打开/关闭index 6 常见问题及解决方法 index相当于RDBMS(关系型 ...
- ASP.NET Core 2.2 十八.各种Filter的内部处理机制及执行顺序
ASP.NET core 的Filter是系统中经常用到的,本文详细分享一下各种Filter定义.执行的内部机制以及执行顺序.(ASP.NET Core 系列目录) 一. 概述 ASP.NET Cor ...
- pm2通过配置文件部署nodejs代码到服务器
一.pm2文档地址: http://pm2.keymetrics.io/ 二.在本地项目下新建ecosystem.config.js文件,并且推送到远端(记得node_modules这个文件夹也得推送 ...