blob 와 string 형식의 상호 변환
2786 단어 자바
package com.coci.test2;
import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import oracle.sql.BLOB;
/**
*
* @author Coci
*
*/
public class TestBlob {
public static void main(String[] args) {
// blob
// String getBytes ( ), blob
String blobStr = "blob";
byte[] bytes = null;
try {
bytes = blobStr.getBytes("utf-8");
System.out.println("===" + bytes);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
instertData(bytes);
// Blob , String , InputStream, InputStream byte[], String 。
// blob String
// String result = "";
// try {
// ByteArrayInputStream msgContent = (ByteArrayInputStream) blob
// .getBinaryStream();
// byte[] byte_data = new byte[msgContent.available()];
// msgContent.read(byte_data, 0, byte_data.length);
// result = new String(byte_data);
// } catch (SQLException e) {
// e.printStackTrace();
// }
}
@SuppressWarnings("deprecation")
public static void instertData(byte[] value) {
// TODO Auto-generated method stub
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@10.211.19.71:1521:orcl";
String username = "yst";
String password = "yst";
Connection con = DriverManager.getConnection(url, username,
password);
con.setAutoCommit(false);
String sql1 = "insert into testcoci(id,name) values('88',empty_blob())";
Statement statement = con.createStatement();
boolean b2 = statement.execute(sql1);
System.out.println(" ===" + b2);
String sql2 = "select name from testcoci where id=88 for update";
PreparedStatement stmt = con.prepareStatement(sql2);
ResultSet rs = stmt.executeQuery();
OutputStream outStream = null;
if (rs.next()) {
System.out.println(" ");
BLOB blob = (BLOB) rs.getBlob(1);
System.out.println(" blob =" + blob + "=");
outStream = blob.getBinaryOutputStream();
outStream.write(value, 0, value.length);
}
outStream.flush();
outStream.close();
con.commit();
con.close();
} catch (Exception e) {
System.out.println(e.getCause());
}
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.