JDBC中rs.beforeFirst()】的更多相关文章

写在前面: 最近的项目比较老,用到了jdbc查询数据,展示数据.有时候一个查询语句的ResultSet需要用到好几次,即需要遍历好几次同一个查询结果集,那要怎么办呢? 使用如下方式即可解决 其实这里理解了rs.next()就可以理解为什么使用prmt = conn.prepareStatement(sql)这种方式是不可以进行多次遍历的.....因为rs.next()从字面的意思理解 就是下一个的意思,如果你想多次重复遍历一个结果集,每次的rs.next()就都是下一个啦.....…
例如在mysql中的一张表中存在一个字段opr_time为datetime类型, 在JDBC 中通过rs.getString("opr_time");来获取使会在日期后面添加".0", 例如日期为:2014-06-01 12:10:20 查询出来为:2014-06-01 12:10:20.0 解决方法:通过rs.getTimestamp("opr_time")获取对应的时间戳然后调用toDateStr(Timestamp tt)方法就可以. pu…
JDBC中的主要类(接口) 在JDBC中常用的类有: 1.DriverManager 2.Connection 3.Statement 4.ResultSet 1.DriverManager 其实我们今后只需要会用DriverManager的getConnection( )方法即可: 1. Class.forName("com.mysql.jdbc.Driver");//注册驱动 2. String url = "jdbc:mysq  l://localhost:3306/m…
方法一:利用ResultSet的getRow方法来获得ResultSet的总行数 Java代码 ResultSet rs; rs.last(); //移到最后一行 int rowCount = rs.getRow(); //得到当前行号,也就是记录数 rs.beforeFirst(); //如果还要用结果集,就把指针再移到初始化的位置 方法二:利用循环ResultSet的元素来获得ResultSet的总行数 Java代码 ResultSet rs; int rowCount = 0; while…
事务-Transaction 某些情况下我们希望对数据库的某一操作要么整体成功,要么整体失败,经典的例子就是支付宝提现.例如我们发起了支付宝到银行卡的100元提现申请,我们希望的结果是支付宝余额减少100元,银行卡余额增加100元,而不是支付宝的100元被扣除,而银行卡的100元却没收到.也就是说,要么100元从支付宝扣除的同时银行卡也会多出一百元,要么这次提现失败支付宝的100元还在,银行卡也没有收到钱.支付宝扣钱和银行卡收钱,这两件事要么都成功要么都失败. 事物的ACID特性: 满足ACID…
前几天碰见了一个很奇葩的问题,使我百思不得其解,今天就写一下我遇见的问题吧,也供大家参考,别和我犯同样的毛病. 首先说下jdbc,jdbc是java是一种用于执行SQL语句的Java API,从jdbc中取值我们一般都是Statement stmt 的next()方法,或者是PreStatement  的next()方法, next()方法用来判断下一条记录是否存在,如果存在就执行一次,游标就向后移动.最开始的时候,游标位于第一条记录之前,也就是说执行一次后,游标移动到第一条记录的位置,随着循环…
一.DAO设计模式概述###<1>概念 DAO,Data Access Object ,用于访问数据库的对象. 位于业务逻辑和数据持久化层之间,实现对数据持久化层的访问![](1.png) ###<2>作用 隔离了业务层和数据访问层,将两层进行解耦 隔离了不同数据库的实现 增强的程序的可移植性和可扩展性 ![](2.png) ###<3>组成 1. DAO接口(内存插槽的标准):定义操作数据的接口,CRUD 2. DAO实现类(不同内存条厂商生成的内存条):DAO接口的…
数据库在当今的应用越来越广泛了,同样伴随着领域的广泛,存储的内容也不在是只有数值.字符.boolean几种类型,而是越来越多样化.在这样的前提下就出现了Blob和Clob两个类型.下面我将对这个两个类型在JDBC中的应用,进行一个简短的介绍 Blob是指二进制大对象也就是英文Binary Large Object的所写,而Clob是指大字符对象也就是英文Character Large Object的所写.由此可见这两个类型都是用来存储大量数据而设计的,其中BLOB是用来存储大量二进制数据的:CL…
那么我们都是通过程序操作数据库.所以要了解jdbc下怎样对事务操作.jdbc如何操作事务? 自动事务false那就不开了呗相当于开启事务. package cn.itcast.transaction; import java.sql.Connection; import java.sql.SQLException; import java.sql.Statement; import cn.itcast.utils.JdbcUtils; //代码加上事务了加上回滚了加上提交了 //jdbc中事务操…
测试 jdbc 中连接关闭的时机 写一段程序,测试 jdbc 连接的关闭情况 /** * 测试 jdbc 连接的关闭情况 */ public static void testOpenCon(){ //打开连接 // getOpenCon(); try { //关闭连接 // CON.close(); //如果CON不为空,已连接过 if(CON!= null){ //如果CON是false // isClosed()该方法判断是否关闭连接 返回true false 返回true是已经关闭 返回f…