当前位置: 技术问答>java相关
100分求Clob存取完整源码
来源: 互联网 发布时间:2015-08-06
本文导语: 表:mytable 字段:id(Integer),content(clob) 要求:JDBC2.0以Thin方式连接数据库,向content字段存储长字符串(长度 > 4000),并读取显示。 | 保存 File file = new File("myimage.gif"); FileInputStream fis = new File...
表:mytable
字段:id(Integer),content(clob)
要求:JDBC2.0以Thin方式连接数据库,向content字段存储长字符串(长度 > 4000),并读取显示。
字段:id(Integer),content(clob)
要求:JDBC2.0以Thin方式连接数据库,向content字段存储长字符串(长度 > 4000),并读取显示。
|
保存
File file = new File("myimage.gif");
FileInputStream fis = new FileInputStream(file);
PreparedStatement ps =
conn.prepareStatement("insert into images values (?,?)");
ps.setString(1,file.getName());
ps.setBinaryStream(2,fis,file.length());
ps.executeUpdate();
ps.close();
fis.close();
File file = new File("myimage.gif");
FileInputStream fis = new FileInputStream(file);
PreparedStatement ps =
conn.prepareStatement("insert into images values (?,?)");
ps.setString(1,file.getName());
ps.setBinaryStream(2,fis,file.length());
ps.executeUpdate();
ps.close();
fis.close();
|
package com.broadvident.database;
import java.sql.*;
import java.io.*;
import oracle.sql.*;
import oracle.jdbc.driver.*;
import com.broadvident.database.DBConnection;
/**
*
*
*
*
*
* @author
* @version 0.9
*/
public class DBMS_LOB {
/**
* 以字符串的形式返回指定的CLOB字段中存储的内容。
* @param rs 查询记录集,此方法从ResultSet中当前记录指针指向记录的指定CLOB字段内容。
* @param lob_fieldName clob字段名,注意如果SQL语句类似于select a as b from table1,则lob_fieldName应该为b而不是a
* @return String clob内容,以String表示。
* @throws Exception 抛出的异常,需要在客户调用代码出捕获异常
*/
public static String getClob(ResultSet rs,String lob_fieldName) throws Exception {
String result=null;
if (rs!=null) {
try{
CLOB clob=((OracleResultSet)rs).getCLOB(lob_fieldName);
result=clob.getSubString(1,(int)clob.length());
}catch(SQLException se){
System.out.println("**错误: 无法获取CLOB对象!");
System.out.println(se.getMessage());
throw se;
}
}
return result;
}
/**
* 以字符串的形式返回指定的CLOB字段中存储的内容。
* @param rs 查询记录集,此方法从ResultSet中当前记录指针指向记录的指定CLOB字段内容。
* @param nIndex clob字段索引,依据SQL标准,索引从1开始
* @return String clob内容,以String表示。
* @throws Exception 抛出的异常,需要在客户调用代码出捕获异常
*/
public static String getClob(ResultSet rs,int nIndex) throws Exception {
String result=null;
if (rs!=null) {
try{
CLOB clob=((OracleResultSet)rs).getCLOB(nIndex);
result=clob.getSubString(1,(int)clob.length());
}catch(SQLException se){
System.out.println("**错误: 无法获取CLOB对象!");
System.out.println(se.getMessage());
throw se;
}
}
return result;
}
/**
* 以字符串的形式返回指定的CLOB字段中存储的内容。
* @param strSl 查询SQL语句
* @param lob_fieldName clob字段名称
* @return String clob内容,以String表示。
* @throws Exception 抛出的异常,需要在客户调用代码出捕获异常
*/
public static String getClob(String strSql,String lob_fieldName) throws Exception {
DBConnection conn=new DBConnection();
ResultSet rs=null;
String result=null;
try{
rs=conn.executeQuery(strSql);
if (rs.next()) {
CLOB clob=((OracleResultSet)rs).getCLOB(lob_fieldName);
result=clob.getSubString(1,(int)clob.length());
}
rs.close();
rs=null;
}
catch(SQLException se) {
System.out.println("**错误: 无法获取CLOB字段内容!");
System.out.println(se.getMessage());
throw se;
}
try{
conn.close();
}catch(Exception e){
System.out.println("**错误: 返还连接错误!");
System.out.println(e.getMessage());
throw e;
}
return result;
}
/**
* 以字符串的形式返回指定的CLOB字段中存储的内容。本方法默认SQL语句的第一个查询字段为CLOB字段
* @param strSl 查询SQL语句
* @return String clob内容,以String表示。
* @throws Exception 抛出的异常,需要在客户调用代码出捕获异常
*/
public static String getClob(String strSql) throws Exception {
DBConnection conn=new DBConnection();
ResultSet rs=null;
String result=null;
try{
rs=conn.executeQuery(strSql);
if (rs.next()) {
CLOB clob=((OracleResultSet)rs).getCLOB(1);
result=clob.getSubString(1,(int)clob.length());
}
rs.close();
rs=null;
}
catch(SQLException se) {
System.out.println("**错误: 无法获取CLOB字段内容!");
System.out.println(se.getMessage());
throw se;
}
try{
conn.close();
}catch(Exception e){
System.out.println("**错误: 返还连接错误!");
System.out.println(e.getMessage());
throw e;
}
return result;
}
/**
* 以字符串的形式返回指定的CLOB字段中存储的内容。本方法默认SQL语句的第一个查询字段为CLOB字段
* @param strSl 查询SQL语句
* @param nIndex clob字段索引
* @return String clob内容,以String表示。
* @throws Exception 抛出的异常,需要在客户调用代码出捕获异常
*/
public static String getClob(String strSql,int nIndex) throws Exception {
DBConnection conn=new DBConnection();
ResultSet rs=null;
String result=null;
try{
rs=conn.executeQuery(strSql);
if (rs.next()) {
CLOB clob=((OracleResultSet)rs).getCLOB(nIndex);
result=clob.getSubString(1,(int)clob.length());
}
rs.close();
rs=null;
}
catch(SQLException se) {
System.out.println("**错误: 无法获取CLOB字段内容!");
System.out.println(se.getMessage());
throw se;
}
try{
conn.close();
}catch(Exception e){
System.out.println("**错误: 返还连接错误!");
System.out.println(e.getMessage());
throw e;
}
return result;
}
import java.sql.*;
import java.io.*;
import oracle.sql.*;
import oracle.jdbc.driver.*;
import com.broadvident.database.DBConnection;
/**
*
Title: Oracle LOB类型数据操作类
*
Description: 操作Oracle的LOB数据类型,主要是读取和更新,此类为Oracle数据库专有类可能无法用在其它数据库上
*
同时应该注意,由于此类所有的方法都是静态的,使用此类时不必实例化,直接采用classname.method()即可。
*
Copyright: Copyright (c) 2002
*
Company:
* @author
* @version 0.9
*/
public class DBMS_LOB {
/**
* 以字符串的形式返回指定的CLOB字段中存储的内容。
* @param rs 查询记录集,此方法从ResultSet中当前记录指针指向记录的指定CLOB字段内容。
* @param lob_fieldName clob字段名,注意如果SQL语句类似于select a as b from table1,则lob_fieldName应该为b而不是a
* @return String clob内容,以String表示。
* @throws Exception 抛出的异常,需要在客户调用代码出捕获异常
*/
public static String getClob(ResultSet rs,String lob_fieldName) throws Exception {
String result=null;
if (rs!=null) {
try{
CLOB clob=((OracleResultSet)rs).getCLOB(lob_fieldName);
result=clob.getSubString(1,(int)clob.length());
}catch(SQLException se){
System.out.println("**错误: 无法获取CLOB对象!");
System.out.println(se.getMessage());
throw se;
}
}
return result;
}
/**
* 以字符串的形式返回指定的CLOB字段中存储的内容。
* @param rs 查询记录集,此方法从ResultSet中当前记录指针指向记录的指定CLOB字段内容。
* @param nIndex clob字段索引,依据SQL标准,索引从1开始
* @return String clob内容,以String表示。
* @throws Exception 抛出的异常,需要在客户调用代码出捕获异常
*/
public static String getClob(ResultSet rs,int nIndex) throws Exception {
String result=null;
if (rs!=null) {
try{
CLOB clob=((OracleResultSet)rs).getCLOB(nIndex);
result=clob.getSubString(1,(int)clob.length());
}catch(SQLException se){
System.out.println("**错误: 无法获取CLOB对象!");
System.out.println(se.getMessage());
throw se;
}
}
return result;
}
/**
* 以字符串的形式返回指定的CLOB字段中存储的内容。
* @param strSl 查询SQL语句
* @param lob_fieldName clob字段名称
* @return String clob内容,以String表示。
* @throws Exception 抛出的异常,需要在客户调用代码出捕获异常
*/
public static String getClob(String strSql,String lob_fieldName) throws Exception {
DBConnection conn=new DBConnection();
ResultSet rs=null;
String result=null;
try{
rs=conn.executeQuery(strSql);
if (rs.next()) {
CLOB clob=((OracleResultSet)rs).getCLOB(lob_fieldName);
result=clob.getSubString(1,(int)clob.length());
}
rs.close();
rs=null;
}
catch(SQLException se) {
System.out.println("**错误: 无法获取CLOB字段内容!");
System.out.println(se.getMessage());
throw se;
}
try{
conn.close();
}catch(Exception e){
System.out.println("**错误: 返还连接错误!");
System.out.println(e.getMessage());
throw e;
}
return result;
}
/**
* 以字符串的形式返回指定的CLOB字段中存储的内容。本方法默认SQL语句的第一个查询字段为CLOB字段
* @param strSl 查询SQL语句
* @return String clob内容,以String表示。
* @throws Exception 抛出的异常,需要在客户调用代码出捕获异常
*/
public static String getClob(String strSql) throws Exception {
DBConnection conn=new DBConnection();
ResultSet rs=null;
String result=null;
try{
rs=conn.executeQuery(strSql);
if (rs.next()) {
CLOB clob=((OracleResultSet)rs).getCLOB(1);
result=clob.getSubString(1,(int)clob.length());
}
rs.close();
rs=null;
}
catch(SQLException se) {
System.out.println("**错误: 无法获取CLOB字段内容!");
System.out.println(se.getMessage());
throw se;
}
try{
conn.close();
}catch(Exception e){
System.out.println("**错误: 返还连接错误!");
System.out.println(e.getMessage());
throw e;
}
return result;
}
/**
* 以字符串的形式返回指定的CLOB字段中存储的内容。本方法默认SQL语句的第一个查询字段为CLOB字段
* @param strSl 查询SQL语句
* @param nIndex clob字段索引
* @return String clob内容,以String表示。
* @throws Exception 抛出的异常,需要在客户调用代码出捕获异常
*/
public static String getClob(String strSql,int nIndex) throws Exception {
DBConnection conn=new DBConnection();
ResultSet rs=null;
String result=null;
try{
rs=conn.executeQuery(strSql);
if (rs.next()) {
CLOB clob=((OracleResultSet)rs).getCLOB(nIndex);
result=clob.getSubString(1,(int)clob.length());
}
rs.close();
rs=null;
}
catch(SQLException se) {
System.out.println("**错误: 无法获取CLOB字段内容!");
System.out.println(se.getMessage());
throw se;
}
try{
conn.close();
}catch(Exception e){
System.out.println("**错误: 返还连接错误!");
System.out.println(e.getMessage());
throw e;
}
return result;
}
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。