JDBC的七个步骤:
通过JDBC可以实现在Java代码中对数据库执行操作。
1.JDBC所需的四个参数(username,password,url,driver)
这个步骤就相当于我们第一次打开数据库,首先准备好用户名和密码还有主机端口号等信息。代码如下:
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/数据库名?characterEncoding=utf8&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true
jdbc.username=root
jdbc.password=root
一般情况只写(driver,url,username,passsword)
jdbc.在这里是为了指明这个是jdbc的步骤
2.加载数据库驱动
加载jdbc驱动就相当于打开了Navict数据库。代码如下:
class.forName(driver);
3.获取连接对象
这里我们要输入第一步准备好的用户名和密码还有主机端口号等信息,进行登录操作并且建立连接,如图所示:
代码操作如下:
Connection connection = DriverManager.getConnection(url, username, password);
DriverManager是我们说的驱动管理器,它有一个可以获取连接的方法getConnection()。
方法内的参数分别为
url :用来连接到指定远程数据库的标识符
username:用户名
password:密码
最终这个方法会给我们返回一个连接对象Connection,这个返回的对象就是我们常说的数据库连接,如图所示:
4.获取执行对象Statement(或者preparedStatement:表示预编译的 SQL 语句的对象 )
我们需要在第三步创建的连接里新建一个查询,所以用connection的方法创建一个查询对象,也就是执行sql的对象
1.执行静态SQL语句,通过Statement实例实现 ,获取Statement对象的时候不直接传入sql
Statement statement = connection.createStatement();
2.执行动态SQL语句 ,通过PreparedStatement 实例实现 ,获取PrepardeStatement对象的时候需要直接传入sql
PreparedStatement preparedStatement = connection.prepareStatement( sql);
5.写SQL语句并执行
Statement对象
String sql1 ="update stu set name=李四 where id=1";String sql2 ="select * from stu";//执行增删改操作,调用executeUpdate
int count =statement.executeUpdate(sql1);
//执行查询操作,调用executeQuery
ResultSet resultSet = statement.executeQuery(sql2);
PreparedStatement对象
//修改和新增调用executUpdate方法
String sql = "update bmi set date=?,height=?,weight=?,bmi=?,sign=?,username=? where id=?";
//执行SQL语句
PrepareStatement prepareStatement = conn.prepareStatement(sql);
//占位符赋值prepareStatement.setString(1, bmiEntity.getBmi());prepareStatement.setString(2, bmiEntity.getDate());prepareStatement.setString(3, bmiEntity.getSign());prepareStatement.setString(4, bmiEntity.getHeight());prepareStatement.setString(5, bmiEntity.getWeight());prepareStatement.setString(6, bmiEntity.getUsername());prepareStatement.setInt(7, bmiEntity.getId());int i = pstmt.executeUpdate();if(i==1){System.out.println("修改成功");return i;}//查询和按照id删除调用executQuery方法 String sql = "select * from bmi where id=?";
//执行SQL语句PrepareStatement prepareStatement = conn.prepareStatement(sql);
//占位符赋值pstmt.setInt(1, id);ResultSet resultSet = pstmt.executeQuery();
?为占位符, PreparedStatement 中会使用占位符来代替sql拼接
6.遍历结果集
当我们执行sql后就会在控制台显示信息,我们就需要读取它的内容
//创建实体
BmiEntity entity = new BmiEntity();while (result.next()) {
//获取属性String bmi = rs.getString("bmi");String date = rs.getString("date");String height = rs.getString("height");String weight = rs.getString("weight");String sign = rs.getString("sign");String username1 = rs.getString("username");//添加到实体entity.setId(rs.getInt(id));entity.setBmi(bmi);entity.setDate(date);entity.setHeight(height);entity.setWeight(weight);entity.setSign(sign);entity.setUsername(username1);}return entity;
7.释放资源
if (result != null) result.close();
if (preparedStatement != null) preparedStatement.close();
if (connection != null) connection.close();
利用和MySQL数据库的可视化对比帮助更好的去理解jdbc的步骤
JDBC的七个步骤:相关推荐
- 手写JDBC的几个步骤(针对MySQL8.0以上的mysql数据库)
手写JDBC的几个步骤 编者:顾念 使用的MySQL版本:8.0.19: 序言 因为数据库厂商有很多种,为了能够统一让java程序员使用更方便,sun公司编写了一套JDBC接口用于连接数据库.但是只有 ...
- 终端zsh_只需七个步骤,即可使您的“ ZSH”终端站起来—直观指南
终端zsh by rajaraodv 通过rajaraodv 只需七个步骤,即可使您的" ZSH"终端站起来-直观指南 (Jazz Up Your "ZSH" ...
- AI(3)--- 机器学习常见的七个步骤
机器学习常见的七个步骤 小编注:这是 AIA (Ai Adventures) 系列的第二期,讲述实现机器学习常见的七个步骤,本篇视频时长约 10 分钟左右,文末有互动"彩蛋",欢迎 ...
- jdba访问mysql_Java中JDBC操作数据库的步骤
Java中JDBC操作数据库的步骤,今天给喜欢Java开发或者是想要参加Java培训学习的小伙伴们分享一些Java技能干货,那就是Java阐述jdba操作数据库的步骤,废话不多说了,随小编一起来看一下 ...
- 安全强化你的 Linux 服务器的七个步骤
转载来源 :安全强化你的 Linux 服务器的七个步骤 : http://www.safebase.cn/article-258808-1.html 这篇入门文章将向你介绍基本的 Linux 服务器安 ...
- 项目管理:实现按时、按预算、基于目标的交付的七个步骤
根据项目管理研究所(Project Management Institute,PMI)2017年的"职业脉搏"的全球调查,由于项目绩效不佳,组织每投入10亿美元就浪费9700万美元 ...
- 简单七个步骤写一份策划方案(上)
如何条理清晰地写一份策划方案?2.0版 当时是听到身边不少朋友.同事反应他们写方案的时候,经常会陷入一种思维凌乱.打开PPT半天憋不出几个字的窘境,从而导致工作效率低下.也非常打击信心和动力. 还有些 ...
- 使用C语言的七个步骤
文章目录 使用C语言的七个步骤 一:定义程序目标 二:设计程序 三:编写代码 四:编译 五:运行程序 六:测试和调试程序 七:维护和修改代码 一些需要提醒的地方 编译机制 C编程的基本策略 名词概念解 ...
- 创建电子商务网站的七个步骤_新电子商务需要避免的7个错误
创建电子商务网站的七个步骤 If you are investing time, effort and money in setting up an online store, you want to ...
最新文章
- Java集合:HashMap线程不安全?有哪些表现?
- java ucs2转utf8_Windows下Unicode(UCS2),UTF8,GBK(GB2312)互转
- 安卓手机小说阅读器_乐小说阅读器下载手机版-乐小说阅读器app下载安装
- 山寨一个PetShop(Task002)——数据类库Model
- EM从最大似然到EM算法浅解
- 带孩子们做环球旅行的读后感_孩子少言寡语、不爱说话怎么办?家长们可以这样做...
- Oracle数据库执行Sql脚本
- 大数据时代,计算模式从客户机/服务器到节点的转变
- Atitit path query 路径查询语言 数据检索语言 目录 1.1. List map spel	1 1.2. Html数据 》》Css选择符	1 1.3. Json 》map》
- 超声波测距原理与实现
- 信息安全保障体系规划方案
- 文字转语音软件免费的哪个最好用:快试试最像人声的微软语音合成助手吧,本地版微软语音合成工具下载
- 【Anaconda】修改conda默认envs_dirs和pkgs_dirs
- 未来是机器人还是人类的天下?
- Android 检测键盘是否显示及隐藏键盘
- 找最大数及下标 指针 c语言,c语言求数组中最大值和最小值及其下标
- UNITY 5.2.1 发行说明 中文版
- 如何自学 Android 编程-----整理stormzhang的知乎问答
- python 跳跃游戏
- Lust in life
热门文章
- 计算机专业买笔记本8g内存够吗,笔记本电脑8g内存够用吗_笔记本8G内存够不够用-win7之家...
- layui搜索 重置按钮
- iView 表单重置
- shell编程之 if 判断语句
- 论文阅读(10)---用于皮肤病鉴别诊断的深度系统
- 高考540分计算机,一线老师告诉你:高三后期这么做,3个月提高30分真不难!
- html弹出窗口怎么居中显示,HTML页面弹出居中可拖拽的自定义窗口层
- mx3 android6,魅族Flyme6全面推送!网友升级后傻了:竟还是安卓5.1
- index2.php,index2.php
- JS 本地储存 【详细】