易截截图软件、单文件、免安装、纯绿色、仅160KB

java操作oracle数据库中的blob字段

oracle中的BLOB字段是存储2进制的文件,比如文件,图片等。
1、把本地文件写入数据库
package com.data;
import java.io.File;
import java.io.FileInputStream;
import java.io.OutputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
public class WriteBlob {
/**
* beckham 2009-12-7 下午09:47:36
*/
public static void main(String[] args) throws Exception {
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url = "jdbc:oracle:thin:@localhost:1521:menhu";
String user = "zm";
String password = "zm";
Connection conn = DriverManager.getConnection(url, user, password);
// 设置手动提交
conn.setAutoCommit(false);
Statement sta = null;
ResultSet rs = null;
PreparedStatement ps = null;
// 插入空值
String sql = "insert into mytest values(3,empty_blob()) ";
sta = conn.createStatement();
sta.executeUpdate(sql);
conn.commit();
// 锁定并编辑当前数据
sql = "select images from mytest where id=3 for update";
rs = sta.executeQuery(sql);
if (rs.next()) {
oracle.sql.BLOB b = (oracle.sql.BLOB) rs.getBlob("images");
// 输入流
OutputStream os = b.getBinaryOutputStream();
// 输出流
FileInputStream fiis = new FileInputStream(new File("1.doc"));
// 入库
byte[] tmp = new byte[1024];
int a = 0;
while ((a = fiis.read(tmp)) != -1) {
os.write(tmp, 0, a);
os.flush();
}
os.close();
fiis.close();
}
conn.commit();
rs.close();
sta.close();
conn.close();
}
}
 
2、从数据库中读取Blob字段数据
package com.data;
import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class ReadBlob {
/**
* beckham 2009-12-8 下午03:49:30
*/
public static void main(String[] args) throws Exception


相关文档:

java使用rocksaw和vserv tcpip实现基于ICMP的Ping功能

一:准备 www.savarese.org download
 1.  rocksaw-1.0.0-src.tar.gz
 2.  vserv-tcpip-0.9.2-src.tar.gz
二:编译源文件得到jar包 使用Ant
 1.  build vserv-tcpip-0.9.2-src
      在vserv-tcpip-0.9.2目录下面建一个tests目录,然后在cmd窗口下进入 ......

java 枚举类型


Tiger 中的一个重要新特性是枚举构造,它是一种新的类型,允许用常量来表示特定的数据 片断,而且全部都以类型安全的形式来表示。Tiger 专家、developerWorks 的多产作者 Brett McLaughlin将解释枚举的定义,介绍如何在应用程序中运用枚举,以及它为什么能够让您抛弃所有旧的
public static final 代码。
  & ......

初学java刚写的3个数比较大小

import java.io.*;
class abc
{
    public static void main(String [] args)
     {
        int a=0;
        int b=0;
        int c=0;
   &n ......

Java学习笔记⑤ Java虚拟机的工作原理 (一)

一、什么是Java虚拟机
     Java虚拟机是一个想象中的机器,在实际的计算机上通过软件模拟来实现。Java虚拟机有自己想象中的硬件,如处理器、堆栈、寄存器等,还具有相应的指令系统。    
二、为什么使用Java虚拟机
    Java语言的一个非常重要的特点就是与平台的 ......

java实战技巧 关于格式化输出日期

java实战技巧--关于格式化输出日期
使用SimpleDateFormat 格式化输出日期与
使用Calendar 格式化输出日期
在耗时上的对比如下
测试软件平台
win 7,CUP T4200,内存 2G,
eclipse 3.5,
android sdk1.5
测试硬件平台
T Mobile G1,
SimpleDateFormat的输出要比Calendar 慢2倍以上
SimpleDateFormat的格式有限制
比如 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号