jdbc操作数据库的基本流程详解
2023-06-13 09:15:01 时间
所有的JDBC应用程序都具有下面的基本流程:
1、加载数据库驱动并建立到数据库的连接。
2、执行SQL语句。
3、处理结果。
4、从数据库断开连接释放资源。
下面我们就来仔细看一看每一个步骤:
其实按照上面所说每个阶段都可得单独拿出来写成一个独立的类方法文件。共别的应用来调用。
1、加载数据库驱动并建立到数据库的连接:
复制代码代码如下:
2、执行SQL语句。
3、处理结果。
4、从数据库断开连接释放资源。
下面我们就来仔细看一看每一个步骤:
其实按照上面所说每个阶段都可得单独拿出来写成一个独立的类方法文件。共别的应用来调用。
1、加载数据库驱动并建立到数据库的连接:
StringdriverName="com.mysql.jdbc.Driver";
StringconnectiionString="jdbc:mysql://10.5.110.239:3306/test?"+"user=root&password=chen&characterEncoding=utf-8";
Connectionconnection=null;
try{
Class.forName(driverName);//这里是所谓的数据库驱动的加载
connection=(Connection)DriverManager.getConnection(connectiionString);//这里就是建立数据库连接
System.out.println("数据库连接成功");
}catch(ClassNotFoundExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
returnconnection;
Statement:它提供了直接在数据库中执行SQL语句的方法。对于那些只执行一次的查询、删除或者一种固定的sql语句来说已经足够了。
Statementstatement=(Statement)dUtil.getConnection().createStatement();
Stringsql="deletefromdiarywheretitle="+"""+title+""";
intcount=statement.executeUpdate(sql);
System.out.println("删除成功");
Preparedstatement:这种语句对象用于那些需要执行多次,每次仅仅是数据取值不同的SQL语句,它还提供了一些方法,以便指出语句所使用的输入参数。
Stringsql="insertintodiary(title,content,authorname,time)values(?,?,?,now())";
try{
PreparedStatementpreparedStatement=(PreparedStatement)dUtil.getConnection().prepareStatement(sql);
Stringtitle=diary.getTitle();
Stringcontent=diary.getContent();
Stringauthorname=diary.getAuthorName();
preparedStatement.setString(1,title);
preparedStatement.setString(2,content);
preparedStatement.setString(3,authorname);
ResultSetresultSet=statement.executeQuery(sql);
while(resultSet.next()){
Diarydiary=newDiary();
diary.setAuthorName(resultSet.getString("authorname"));
diary.setContent(resultSet.getString("content"));
diary.setTitle(resultSet.getString("title"));
diary.setId(resultSet.getInt("id"));
Datetime=resultSet.getDate("time");
此处,应该知道的是:Statement执行sql语句的方法:insert、Update、delete语句是使用了Statement的executeUpdate方法执行的,返回结果是插入、更新、删除的个数。而select语句执行较为特别是使用了Statement的executeQuery方法执行的。返回的结果存放在resultset结果集中,我们可以调用next()方法来移到结果集中的下一条记录。结果集由行和列组成,各列数据可以通过相应数据库类型的一系列get方法(如getString,getInt,getDate等等)来取得。
publicstaticvoidcloseConnection(ResultSetresultSet,PreparedStatementpreparedStatement,Connectionconnection)throwsSQLException{
if(resultSet!=null)resultSet.close();
if(preparedStatement!=null)preparedStatement.close();
if(connection!=null&&connection.isClosed()==false)connection.close();
System.out.println("数据库关闭");
}
相关文章
- 1数字电路设计流程与SOC芯片架构图
- xhs-web校验流程分析
- 面试题:说下原生 JDBC 操作数据库流程?
- 关于Python区块链项目技术开发详细流程及成熟源码搭建
- Hbuilder用自有证书打包 ios App上架AppStore流程
- mongodb 数据库迁移之 数据块的迁移流程分析
- Oracle数据库opatch补丁操作流程
- MYSQL复制原理及其流程详解数据库
- 深入了解Oracle数据库创建用户的流程(oracle数据库创建用户)
- 探究MySQL数据库开发:探究全流程(mysql数据库开发流程)
- FTP协议的工作流程
- MySQL连接:简化数据库操作流程(mysqllinke)
- 连接mysql数据库JDBC技术实现连接(mysql数据库jdbc)
- 利用Java JDBC连接Oracle数据库(jdbc连接oracle)
- 优化精细化管理:Oracle 数据库流程优化(oracle数据库流程)
- 利用JDBC连接Oracle数据库.(jdbc连接oracle数据库)
- 数据库连接:MySQL JDBC驱动字符串(jdbc字符串mysql)
- 连接使用JDBC连接Oracle数据库(jdbc的oracle)
- 利用JDBC连接Linux服务器数据库(jdbc连接linux)
- 使用JDBC快速访问Oracle数据库(jdbc访问oracle)
- MySQL使用JDBC连接数据库的指南(mysql 的jdbc)
- acle深入探索 CICD 流程搭建之 MYSQLOracle 数据库迁移(ci mysql or)
- 使用JDBC简单调用Oracle数据库(jdbc调用oracle)
- 数据库使用JDBC查询Oracle数据库的方法(jdbc查询oracle)
- 通过JDBC工具以Oracle为基础搭建数据库应用(jdbc工具oracle)
- e审通简化Oracle数据库导入流程(e审通导入oracle)
- 迎接新时代Oracle数据库DMP交接流程(oracle交接dmp)
- 轻松掌握Oracle数据库使用流程(oracle使用顺序)
- driver使用Oracle JDBC Driver更新数据库连接(oracle修改jdbc)
- Oracle中断删除语句轻松解决数据库流程问题(oracle中断删除语句)
- 利用Redis简化数据库缓存流程(redis进行数据库缓存)
- Oracle RAPD数据库智能升级流程简化(oracle rapd)