实习日志二--JDBC
JDBC的编写
- 1.加载驱动
- 2.建立连接
- 3.编写SQL语句
- 3.1. 这是查询的语句。 while(resultSet.next())能够在查询表的所有项目。
- 3.2. 这是删除语句
- 3.3.这是增加记录的语句,在列表中增加值为(005,b3,77)的数据。
- 3.4.这是更新(修改)语句,修改名字为a2的数据
- 4.得到statement 对象
- 5.执行SQL语句
- 6.遍历结果集
- 7.关闭资源
1.加载驱动
JDBC连接到数据库的第一步就是加载驱动。
try{
Class.forName(DBDRIVER);
}catch(Exception e){
System.out.println(“连接失败”);
e.printstack();
如果只写出 Class.forName(DBDRIVER);,将会产生异常。
2.建立连接
建立连接是JDBC连接中容易出错的一步。要连接数据库,需要向java.sql.DriverManager请求并获得Connection对象。 DriverManager的getConnectin(String url , String username , String password )方法来传入连接的链接,用户名和密码。由于对数据库的增删改查都需要用到建立链接这一步,我创建了一个工具类tool。通过调用tool里的静态方法来建立链接,从而减少代码的重复量。
public class tool {
public static Connection DBConnection()
{
Connection connection=null;
try {
Class.forName(“com.mysql.jdbc.Driver”);
connection=DriverManager.getConnection(“jdbc:mysql://127.0.0.1:3306/zt?useSSL=true&characterEncoding=utf-8&user=root&password=123”);
} catch (Exception e) {
e.printStackTrace();
}
return connection;
}
}
3.编写SQL语句
3.1. 这是查询的语句。 while(resultSet.next())能够在查询表的所有项目。
statement = connection.prepareStatement(sql);
resultSet = statement.executeQuery();
//6.处理结果集
while(resultSet.next())
{
System.out.println(resultSet.getString(1));
System.out.println(resultSet.getString(2));
}
3.2. 这是删除语句
String sql=“Delete from student where Sname=‘b3’”;。删除名字为b3的学生数据。
、
3.3.这是增加记录的语句,在列表中增加值为(005,b3,77)的数据。
String sql =“insert into student(Sid,Sname,Score)values(?,?,?)”;
statement =connection.prepareStatement(sql);
statement.setString(1,“005”);
statement.setString(2,“b3”);
statement.setInt(3,77);
statement.executeUpdate();
这是修改语句
String sql = "Update student set Score=99 where Sname=‘a2’ ";
3.4.这是更新(修改)语句,修改名字为a2的数据
String sql = "Update student set Score=99 where Sname=‘a2’ ";
4.得到statement 对象
statement = connection.prepareStatement(sql);要执行SQL语句,必须获得java.sql.Statement实例,执行静态SQL语句。通常通过Statement实例实现。
5.执行SQL语句
Statement接口提供了三种执行SQL语句的方法:executeQuery 、executeUpdate
和execute 。其中:
1、ResultSet executeQuery(String sqlString):执行查询数据库的SQL语句
,返回一个结果集(ResultSet)对象。
2、int executeUpdate(String sqlString):用于执行INSERT、UPDATE或
DELETE语句以及SQL DDL语句,如:CREATE TABLE和DROP TABLE等
3、execute(sqlString):用于执行返回多个结果集、多个更新计数或二者组合的
语句。
6.遍历结果集
使用结果集(ResultSet)对象的访问方法获取数据:
while(rs.next()){
String Sid =rescultset…getString(“name”) ;
String score =rescult…getString(1) ;
}
7.关闭资源
在使用相关资源完成了操作之后,需要对资源进行关闭,否则将会浪费资源。与建立链接相同,我在tool类中创建了close方法,方法如下。
public static void Close(ResultSet resultset,PreparedStatement statement,Connection connection)
{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();}}
使用这个方法就能够简单的关闭资源,避免造成浪费。
以上七个步骤就是创建JDBC连接的基本步骤。
实习日志二--JDBC相关推荐
- 杰普实习日志 第一天学习内容
这里写自定义目录标题 欢迎使用Markdown编辑器 新的改变 功能快捷键 合理的创建标题,有助于目录的生成 如何改变文本的样式 插入链接与图片 如何插入一段漂亮的代码片 生成一个适合你的列表 创建一 ...
- 前端开发实习生-实习日志
文章目录 前言 一.工作内容和要求 二.工作情况记录 三.个人体会或收获 总结 前言 前端开发实习生的日常工作实习日志 一.工作内容和要求 初进公司,熟悉环境,了解大概流程,参加了公司的新员工培训大会 ...
- 实习日志_【人医札记】护理实习日志
实习日志:新起点 01 章莹 (河南鹤壁职业技术学院) 盛夏七月,开始了我的实习生活-- 有幸可以来到兰溪市人民医院,经历了几十年风雨历程,一个花甲的峥嵘岁月,几十年璀璨硕果的积累,也让我对实习充满了 ...
- 实习日志_实习律师实习日志第十八篇(连载30篇)
提供实习律师实习日记相关的文章资讯,希望我的分享能让您感到满意! 这个月接触最多的是人身损害赔偿的一些案件,交通事故.工伤的一些案件最多.起初,以为这些案件就是走走法律流程便可了事,最简单不过,可当完 ...
- 华为无线通用软件开发 实习一面二面
2022年秋招/春招/提前批/大厂面经整理(持续更新中~) 华为无线通用软件开发 实习一面二面 一面 50min 1.自我介绍(自己介绍了一下专业.院校.成绩.做过的项目.参加的竞赛) 2.面试官:你 ...
- 一个轻巧高效的多线程c++stream风格异步日志(二)
一个轻巧高效的多线程c++stream风格异步日志(二) 文章目录 一个轻巧高效的多线程c++stream风格异步日志(二) 前言 LogFile类 AsyncLogging类 AsyncLoggin ...
- 仿酷狗音乐播放器开发日志二十二 动态调色板控件第二版(性能大幅提升附源码)...
转载请说明原出处,谢谢~~ 在上次写的博客<仿酷狗音乐播放器开发日志二十一 开发动态调色板控件(附源码)>发布后,我在群里和网友讨论这个控件的性能和优 缺点,发现了他很多不足,还有很多提升 ...
- 大工《金工实习(二)》大作业离线作业
大连理工大学远程与继续教育学院<金工实习(二)>实验报告及要求 学习中心: 姓名: 1.车床安装工件时,注意事项有哪些? 答: 2.请简述车床在车削中试切的意义. 答: 3.请简述三面刃铣 ...
- 字节TikTok暑期实习一面二面三面面经(以OC)
字节TikTok暑期实习一面二面三面面经(以OC) 字节TikTok暑期实习一面二面三面面经(以OC) 之前面试汇总题 字节一面(4月23日 4:00) 字节二面(4月23日 5:00) 字节三面(4 ...
最新文章
- 重庆发信息化建设管理通知 利好云产业
- Dictionary泛型集合
- Android 2018最新验证手机号正则表达式
- oracle数据连接java,java是与Oracle数据连接(jdbc)
- 复合索引的列顺序判断
- 因子和,因子数,1到n的因子和,1到n的因子数(积性函数)
- HTML5 Web SQL
- Web打印连续的表格,自动根据行高分页
- C#Winform窗体实现服务端和客户端通信例子(TCP/IP)
- 打印机打印第一页的问题
- 重磅!一文读懂线性方程组的求解方法
- iOS App 崩溃报告符号化,.ips崩溃报告文件分析
- SVM支持向量机习题解答
- 学会shell 基本语法,玩转linux
- Qt5.9一个简单的多线程实例(类QThread)(第一种方法)
- 基于java的论文查重系统设计
- 安卓计步器是如何实现计步的
- SVM支持向量机原理(一) 线性支持向量机
- Redis运行时突然不能读取数据了
- the voyage游戏android,Bullet Voyage