JDBC总结06-JavaBean 的定义、JDBC2.0 新特性、SQL3.0 规范中的新类型

JavaBean 的定义:  
  1、 是一个普通的 Java 类 
  2、 在结构上没有预先的规定,不需要容器,不需要继承类或实现接口 
  3、 要求必须放在包中,要求实现 Serializable 接口 
  4、 要求有一个无参的构造方法. 
  5、 属性的类型必须保持唯一,返回值必须和 set 方法参数类型一致 
  6、 对每个属性要有对应的 get 和 set 方法。注:隐藏属性可以没有 
  7、 可以有外观作为显示控制,事件机制。 
JDBC2.0 新特性:  
1、Scrollability 结果集可滚动  
    滚动:可双向支持绝对与相对滚动,对结果集可进行多次迭代。 
               Con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, 
                                          ResultSet.CONCUR_UPDATABLE); 
           TYPE_FORWARD_ONLY: 
            该常量指示指针只能向前移动的 ResultSet 对象的类型。 
           TYPE_SCROLL_SENSITIVE: 
           该常量指示可滚动并且通常受其他的更改影响的 ResultSet 对象的类型。 
           CONCUR_UPDATABLE: 
           该常量指示可以更新的 ResultSet 对象的并发模式。 
            绝对定位:boolean absolute(int row)将游标移动到指定位置。 
            相对定位:void afterLast()将游标向后移动一位。 
                          void beforeFirst() 。将游标向前移动一位。 
                          boolean first()将游标移动到结果集最前 
                          boolean last()将游标移动到结果集末尾。 
2、Updatability 结果集可更新。            (主要应用于桌面应用) 
    更新:rs.updateString(“name”,”Tony”); 
            rs.updateInt(1,”122323”);修改 
            rs.deleteRow();删除 
            rs.updateRow(); 
     注:只有在必要的时候(如桌面应用)才用结果集更新数据库,因为使 
          用结果集更新数据库效率低下。可更新结果集还要看数据库驱动程 
          序是否支持,如 Oracle 就支持 MySql 不支持。并且只能针对一张表 
          做结果集更新。而且不能有 join 操作。必须有主健,必须把非空没 
          有默认值的字段查出。处理可更新结果级时不能用 select *来执行查 
          询语句,必须指出具体要查询的字段。 
3、Batch updates 可批量更新。  
         将一组对数据库的更新操作发送到数据库统一执行(数据库支持并发 
    执行操作),以提高效率。主要是通过减少数据(Sql 语句或参数)在网络 
    上传输的次数来节省时间。 
      (1)对于 Statement 的批量更新处理: 
            stm.addBatch(Sql); 
            stm.addBatch(Sql); 
            int[] results=stm.executeBatch(); 
      (2)对于 PreparedStatement 的批量跟新处理 
           pstm.setInt(1,11);pstm.setString(2,”haha”);…….. 
              pstm.addBatch() 
              pstm.setInt(1,12);pstm.setString(2,”gaga”);…….. 
              pstm.addBatch() 
              int[] results=stm.executeBatch(); 
              注:int[] 中每一个数表示该 Sql 语句影响到的记录条数。 
                    PreparedStatement 的更新操作比 Statement 的更新操作多了一 
                    个设置参数的过程。 
SQL3.0 规范中的新类型  
Array 数组类型,主要用于保存一些类似于数组结构的数据。 
Sturct 结构 
Blob,大的二进制数据文件,最多存储 2G。 
Clob,大文本文件对象,最多存储 2G。 
在使用上述大对象的时候,在使用 JDBC 插入记录时要先插入一个空的占位对象,然后使 
用 
select blobdata from t_blob where id = " + id + " for update 这样的语法来对获得 
的大对象,进行实际的写入操作 Blod 通过 getBinaryOutputStream()方法获取流进行写 
入。getBinaryStream()方法获得流来获取 Blob 中存储的数据。 
Clob 的 操 作 也 和 、 Blob 相 同 。 getAsciiStream() 方 法 用 于 读 取 存 储 的 文 本 对 象 , 
getAsciiOutputStream()方法之获得流用来向文件对象写入的。 
BLOB 与 CLOB 的异同点: 
① 都可以存储大量超长的数据; 
② BLOB (Binary Large Object) 以二进制格式保存于数据库中,特别适合保存图片、视 
频文件、音频文件、程序文件等; 
③ CLOB (Character Large Object) 以 Character 格式保存于数据库中,适合保存比较 
长的文本文件。 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值