导入源码查看过底层代码啊:

DriverManager

该类的主要作用就是创建连接,在上一节的代码中使用了反射的机制注册了驱动,这里需要注意的是不同的数据库,在forName中的参数写法不同,MySQL的写法:com.mysql.jdbc.Driver。新版MySQL驱动的写法是:com.mysql.cj.jdbc.Driver
获取连接Connection时,调用了DriverManager类中的getConnection方法,该方法在DriverManager类中有几个重载方法:

getConnection(String url);
getConnection(String url,String user, String password);
getConnection(String url,java.util.Properties info); getConnection(String url, java.util.Properties info, Class<?> caller);

该方法的作用就是获取数据库的连接,上面前三个中最终都调用了第4个方法并将数据库连接的一些信息传了过去。

其中java.util.Properties该类是一个跟配置文件相关的类,继承了HashTable类。(用来装用户名和密码): 如下代码可知啊

java.util.Properties info = new java.util.Properties();
info.setProperty("user", "root");
info.setProperty("password","root");

将用户名和密码封装到了info对象中,此时可以调用getConnection(String url,java.util.Properties info);这个方法将info作为参数传递过去。

Statement

该接口的作用是操作sql语句,并返回相应结果的对象。
常用的方法如下:

  • ResultSet executeQuery(String sql) 根据查询语句返回结果集。只能执行select语句。
  • int executeUpdate(String sql) 根据执行的DML(insert update delete)语句,返回受影响的行数。(一般返回>0 判断即可)
  • boolean execute(String sql) 此方法可以执行任意sql语句。返回boolean值,表示是否返回ResultSet结果集。仅当执行select语句,且有返回结果时返回true, 其它语句都返回false;

如果执行增删改操作时,使用executeUpdate方法即可:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;public class Main {public static void main(String[] args) {try {String sql = "INSERT INTO t_user(name,password,email,birthday) VALUES('hgy','123456','134@qq.com','1993-11-30')";Class.forName("com.mysql.jdbc.Driver");Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/jcbd","root","root");Statement statement = conn.createStatement();int x = statement.executeUpdate(sql);if (x > 0){   //x是statement.executeUpdate操作后返回的受影响语句的条数System.out.println("成功!");}} catch (Exception e) {e.printStackTrace();}/** 这里用了增删改的增啊  其他自测啊!* */}}

ResultSet

该接口的作用主要用来封装结果集。
常用的封装数据的方法:getObject(String ColomnName); 根据列名取值(返回的是Object类)。

除了上的方法之外还有:

getObject(int columnIndex); 根据序号取值,索引从1开始

只不过该方法在使用起来可读性不强,不建议使用。
在做查询操作时,可能会返回多条数据结果,此时可以定义一个JavaBean类,将数据封装到该JavaBean中,多条数据的话将此JavaBean放到集合中。

JavaBean: 这个东东就是一个概念:

1、所有属性为private
2、提供默认构造方法
3、提供getter和setter
4、实现serializable接口

完了

具体自己操作啊  之前学安卓就是用的这个概念!

差不多了 哎···

JCBD - 4 - JCBD - CRUD操作 即:JDBC常用接口详解相关推荐

  1. JDBC学习笔记01【JDBC快速入门、JDBC各个类详解、JDBC之CRUD练习】

    黑马程序员-JDBC文档(腾讯微云)JDBC笔记.pdf:https://share.weiyun.com/Kxy7LmRm JDBC学习笔记01[JDBC快速入门.JDBC各个类详解.JDBC之CR ...

  2. QT:常用函数详解--常用操作记录(个人笔记)

    QT:常用函数详解(个人笔记) PS:一下内容个人笔记,要求自己看懂,随笔,阅读体验会很差很差! Qt setContentsMargins()函数 函数原型:void QLayout::setCon ...

  3. MySQL常用操作之创建存储过程语法详解

    MySQL常用操作之创建存储过程语法详解 前言 简介 语法 创建结构 变量结构 入参变量和出参变量 流程控制 判断(IF 语句) 判断(CASE 语句) 循环(LOOP 语句) 循环(WHILE 语句 ...

  4. docker常用命令详解

    docker常用命令详解 本文只记录docker命令在大部分情境下的使用,如果想了解每一个选项的细节,请参考官方文档,这里只作为自己以后的备忘记录下来. 根据自己的理解,总的来说分为以下几种: Doc ...

  5. Samtools(CentOS Linux)安装及常用命令详解

    序列比对(将测序reads与已知序列信息的基因或基因组进行比对)是高通量测序数据分析中最重要的一环,无论是转录组还是重测序都是基于比对结果来进行后续各项分析的,比对结果格式比较常见的是sam和bam文 ...

  6. Ansible基本使用及常用模块详解

    一.ansible基本使用 定义主机组 定义被管理节点列表的文件/etc/ansible/hosts,在定义被管理节点的时候,可以单独基于主机做定义,也可以将多个主机定义成一个主机组. 在上篇博文安装 ...

  7. python的shutil模块是内置的_Python之shutil模块11个常用函数详解,python内置函数是什么...

    Python之shutil模块11个常用函数详解,python内置函数是什么 shutil 是 Python 中的高级文件操作模块,与os模块形成互补的关系,os主要提供了文件或文件夹的新建.删除.查 ...

  8. logback 常用配置详解(二) appender

    详细整理了logback常用配置 不是官网手册的翻译版,而是使用总结,旨在更快更透彻的理解其配置 logback 简介 logback常用配置详解(一)<configuration> an ...

  9. SQL Server 2005 常用数据类型详解

    SQL Server 2005 常用数据类型详解 [b]1. 字符串数据类型[/b] char 此数据类型可存储1~8000个定长字符串,字符串长度在创建时指定:如未指定,默认为char(1).每个字 ...

最新文章

  1. IT从业者进阶指南:如何提升自身的不可替代性
  2. 计算机主板揭秘(上)图文并茂版
  3. 【WPF】提高InkAnalyer手写汉字识别的准确率
  4. 求 1-100 之间不能被 3 整除的数之和
  5. CSS3——CSS行内元素和块级元素的转换
  6. 计算机vb期末试题及答案,VB期末考试试题及答案
  7. 哈工大教授车万翔「自然语言处理中的伪数据」
  8. 【转载】教你怎么将centos7打造成桌面系统
  9. mis是商科还是计算机专业,MIS是什么?管理信息系统MIS和计算机科学CS有什么区别?...
  10. ES查询结果全局高亮
  11. 固态硬盘安装Win7双系统
  12. python--生成器
  13. djyvp计算机电缆连接,DJYVP 计算机电缆DJYVPDJYVP电缆
  14. 算法24c语言,EEPROM(AT24C16)页写算法
  15. MATLAB中的直方图阈值处理
  16. 转:中国移动宽带光猫F663路由模式改桥接模式
  17. mini2440 led驱动
  18. mac服务器文件同步软件,[MACOS]使用fswatch和SCP配合实现自动单向实时同步文件
  19. CarSim仿真快速入门(十一)—驾驶员模型(1)
  20. react 基础 - 01 (快速入门:脚本引入、JSX语法)

热门文章

  1. 美团企业版背后,费控和「know-how」的双重苦战
  2. ChatGPT使用指南:英文简历定制新利器
  3. 【技术白皮书】第二章:OCR智能文字识别回顾——自然语言文本发展历程
  4. 剑侠情缘三显示连接服务器超时,剑侠情缘手游进不去怎么办?重连黑屏解决办法攻略...
  5. 深度linux夜间模式,在Linux下安装Yin-Yang以在KDE中设置自动夜间模式
  6. AI(Adobe Illustrator)中的选择工具和直接选择工具有什么区别?
  7. Java连接Mysql数据库警告:Establishing SSL connection without server's identity
  8. 各编程语言 + aardio 相互调用示例(简易代码)
  9. What is Comunion 2022?
  10. 【FinE】红利对期权价格的影响