1、通过Statement实现类执行更新操作(INSERT、UPDATE 、DELETE):

--1)获取数据库连接Connection的对象;

--2)通过Connection类的createStatement()方法获取Statement对象;;

--3)调用Satement类的executeUpdate(sql) 方法执行更新操作;

--4)释放数据库资源(关闭Statement对象和Connection对象);

public static int update(String sql){
Connection conn = null;
Statement statement = null;
int influencedRows = 0;
try{
//获取数据连接
conn = JDBCUtils.getConnection();
//获取Statement对象
statement = conn.createStatement();
//执行更新操作
influencedRows = statement.executeUpdate(sql);
}catch(Exception e){
e.printStackTrace();
}finally{
//释放资源
release(conn, statement);
}
   //返回受影响行数
return influencedRows;
}

2、通过Statement实现类执行查询并获取查询数据:

--步骤与更新大致相同,但是这里使用Statement的executeQuery(sql)方法来执行查询操作,该操作将返回一个ResultSet结果集;

--ResultSet以逻辑表格的形式封装了数据库操作的结果集,ResultSet类维护了一个游标,该游标一开始指向数据表第一行的前面,可通过其next()方法进行下移,若检测到下一行有数据,则游标下移,并返回true,此时可通过getXxx(columnIndex | columnName)等方法获取具体列的值。

public static void query(){
Connection conn = null;
Statement statement = null;
ResultSet rs = null;
String sql = "select * from employees";
try{
//1、获取数据库连接
conn = JDBCUtils.getConnection(); //2、获取Satement对象
statement = conn.createStatement(); //3、调用Statement类的executeQuery(sql)方法获取结果集ResultSet
rs = statement.executeQuery(sql); //4、获取ResultSet中的数据
while(rs.next()){
int id = rs.getInt("employee_id");
String name = rs.getString("last_name");
double salary = rs.getDouble("salary");
System.out.println("ID: " + id);
System.out.println("Last Name: " + name);
System.out.println("Salary: " + salary);
}
}catch(Exception e){
e.printStackTrace();
}finally{
//5、关闭数据库资源
if(rs != null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
} release(conn, statement);
}
}

JDBC--Statement使用的更多相关文章

  1. Error executing DDL via JDBC Statement

    © 版权声明:本文为博主原创文章,转载请注明出处 1.问题描述: 启动hibernate测试案例时报错如下: org.hibernate.tool.schema.spi.CommandAcceptan ...

  2. Error executing DDL via JDBC Statement 导致原因之一:列名使用了sql关键字

    WARN: GenerationTarget encountered exception accepting command : Error executing DDL via JDBC Statem ...

  3. Jdbc -Statement

    Java提供了 Statement.PreparedStatement 和 CallableStatement三种方式来执行查询语句: PreparedStatement是用于执行参数化查询 预编译s ...

  4. 聊聊jdbc statement的fetchSize

    在使用MySQL的JDBC时,如果查询结果集过大,使用一次查询,可能会出现Java.lang.OutOfMemoryError: Java heap space问题,因为DB服务器端一次将查询到的结果 ...

  5. JDBC Statement对象执行批量处理实例

    以下是使用Statement对象的批处理的典型步骤序列 - 使用createStatement()方法创建Statement对象. 使用setAutoCommit()将自动提交设置为false. 使用 ...

  6. java基础 JDBC & Statement & PreparedStatement

    参考文章: http://blog.csdn.net/wang379275614/article/details/23393335 概念 JDBC-数据库连接,是由一些类和接口构成的API,是J2SE ...

  7. JDBC——Statement执行SQL语句的对象

    Statement该对象用于执行静态SQL语句并返回它产生的结果.表示所有的参数在生成SQL的时候都是拼接好的,容易产生SQL注入的问题 PreparedStatement对象是一个预编译的SQL语句 ...

  8. JDBC Statement PrepareStatement

    1.JDBC中Statement接口和PrepareStatement接口关系与区别 Statement接口不能使用占位符?,需要拼sql,所以没有setInt,setString等方法:Prepar ...

  9. JDBC statement的常用方法

    Statement接口: 用于执行静态SQL语句并返回它所生成结果的对象. 三种Statement类: Statement: 由createStatement创建,用于发送简单的SQL语句(最好是不带 ...

  10. Java:Hibernate报错记录:Error executing DDL via JDBC Statement

    想着写一篇hibernate的博文,于是准备从头开始,从官网下了最新的稳定版本来做讲述. 结果利用hibernate自动建表的时候发生下面这个问题. 我很纳闷,之前用低版本一点的没有发生这个问题啊. ...

随机推荐

  1. 2_1 aabb

    输出所有形如aabb的4位完全平方数(即前两位数字相等,后两位数字也相同).

  2. Django框架之模板语言特殊标记(将后端的数据显示到前端)

    后端代码 def GetMain(request): return render( request, "main.html", { "user1":" ...

  3. ZOJ4110 Strings in the Pocket(2019浙江省赛)

    给出两个字符串,询问有多少种反转方法可以使字符串1变成字符串2. 如果两个串相同,就用马拉车算法找回文串的数量~ 如果两个串不同,从前往后找第一个不同的位置l,从后往前找第二个不同的位置r,反转l和r ...

  4. 20 JavaScript随机&逻辑&比较&类型转换

    JavaScript 随机 Math.random(): 返回0~1之间的随机数,包括0不包括1 Math.floor():下舍入.Math.floor(2.9) = 2.Math.floor(Mat ...

  5. 【SSM 项目】实战总结

           项目源代码

  6. springMVC 的拦截器理解

    请复制以下链接看,我只是搬运工 http://blog.csdn.net/yerenyuan_pku/article/details/72567761 http://blog.csdn.net/u01 ...

  7. redhat 7.6 流量监控命令、软件(2) iftop 监控网络IP实时流量

    1.安装iftop,先要安装flex.bison.libpcap编译安装 解压红箭头的两个文件 tar  -zxvpf  iftop-0.16.tar.gz tar  -zxvpf   libpcap ...

  8. Java入门笔记 01-Java基础语法

    一.数据类型和运算符 1.注释可以提高程序的可读性.可划分为 单行注释 // 多行注释 /.../ 文档注释 /**...*/ 2.标识符的命名规则: 标识符必须以字母.下划线_.美元符号$开头. 标 ...

  9. javaweb使用button的onclick属性访问servlet

    1.定义一个servlet: 如我定义了一个名称为Choose_class.java的servlet 2.定义一个button <input type="button"  v ...

  10. 第六周之Hadoop学习(六)

    继续上周开启telnet的过程,这个过程发现win10上运行不了telnet的命令 原因大概在于没有开启telnet服务,从网上下载好telent服务端,安装后继续尝试是否能在win10上使用hado ...