您现在的位置是:主页 > news > 深色系网站/百度竞价代运营外包

深色系网站/百度竞价代运营外包

admin2025/6/29 1:35:30news

简介深色系网站,百度竞价代运营外包,kali 搭建wordpress,做网站推广多少钱经过测试:JAVA存取PostgreSQL的bytea类型均存在内存的限制问题(存取的数据过大会出现out of memory内存溢出的问题),在EnterpriseDB对此做了优化。取PostgreSQL中的bytea,并存储到硬盘上./*** author Liu Yuanyuan*/private void getBytea{Co…

深色系网站,百度竞价代运营外包,kali 搭建wordpress,做网站推广多少钱经过测试:JAVA存取PostgreSQL的bytea类型均存在内存的限制问题(存取的数据过大会出现out of memory内存溢出的问题),在EnterpriseDB对此做了优化。取PostgreSQL中的bytea,并存储到硬盘上./*** author Liu Yuanyuan*/private void getBytea{Co…

经过测试:JAVA存取PostgreSQL的bytea类型均存在内存的限制问题(存取的数据过大会出现out of memory内存溢出的问题),在EnterpriseDB对此做了优化。

取PostgreSQL中的bytea,并存储到硬盘上.

/**

* @author Liu Yuanyuan

*/

private void getBytea

{

Connection conn = null;

Statement stmt = null;

ResultSet rs = null;

try

{

String driver = "org.postgresql.Driver";

String url = "jdbc:postgresql://" + "127.0.0.1" + ":" + "5866" + "/" + "db1";

Class.forName(driver);

System.out.println("find class");

conn = DriverManager.getConnection(url, "lyy", "lyy");

System.out.println("connected");

stmt = conn.createStatement();

String sql = "select obj from lyy.rawtable2 where id = 1";

rs = stmt.executeQuery(sql);

System.out.println("sql=" + sql);

while (rs.next())

{

System.out.println(rs.getMetaData().getColumnTypeName(1));

OutputStream ops = null;

InputStream ips = null;

File file = new File("e:" + File.separator + “binary”);

try

{

ips = rs.getBinaryStream(1);

byte[] buffer = new byte[ips.available()];//or other value like 1024

ops = new FileOutputStream(file);

for (int i; (i = ips.read(buffer)) > 0;)

{

ops.write(buffer, 0, i);

ops.flush();

}

}

catch (Exception ex)

{

ex.printStackTrace(System.out);

}

finally

{

ips.close();

ops.close();

}

}

}

catch (Exception ex)

{

ex.printStackTrace(System.out);

}

finally

{

try

{

If(rs!=null)

rs.close();

if(stmt!=null)

stmt.close();

if(conn!=null)

conn.close();

}

catch (SQLException ex)

{

Logger.getLogger(GetBlob.class.getName()).log(Level.SEVERE, null, ex);

}

}

}

向bytea直接插入二进制文件

Private void  insertByteaByBase64()

{

String driver = "org.postgresql.Driver";

String url = "jdbc:postgresql://" + "127.0.0.1" + ":" + "5432" + "/" + "postgres";

Connection conn = null;

PreparedStatement ps = null;

ResultSet st = null;

try

{

Class.forName(driver);

System.out.println("success find class");

conn = DriverManager.getConnection(url, "postgres", "pg");

System.out.println("success connect");

String sql = "insert into blobtable(id,obj) values(?,?)";

ps = conn.prepareStatement(sql);

String fpath = “d:”+File. Separator + “image.jpg”;

File file = new File(fpath);

InputStream ips = new FileInputStream(file);

ps.setInt(1, 400);

ps.setBinaryStream(2, ips, (int) file.length());

ps.executeUpdate();

System.out.println("insert");

}

catch (Exception ex)

{

ex.printStackTrace(System.out);

}

finally

{

try

{

if(ps!=null)

ps.close();

if(conn!= null)

conn.close();

}

catch (SQLException ex)

{

ex.printStackTrace(System.out);

}

}

}

通过base64向bytea插入二进制文件

Private void  insertByteaByBase64()

{

String driver = "org.postgresql.Driver";

String url = "jdbc:postgresql://" + "127.0.0.1" + ":" + "5432" + "/" + "postgres";

Connection conn = null;

PreparedStatement ps = null;

ResultSet st = null;

try

{

Class.forName(driver);

System.out.println("success find class");

conn = DriverManager.getConnection(url, "postgres", "pg");

System.out.println("success connect");

byte[] b = ByteaClass.getBytes();//得到数组byte[]

System.out.println("Length = " + b.length);

String s = Base64.encodeBytes(b, 0, b.length);

System.out.println("s = " + s.length());

String sql = "insert into blobtable(id,obj) values(?,?)";

String c = "decode(\'" + s + "\',\'base64\')";

sql = sql.replace("?,?", "?," + c);

System.out.println("sql = " + sql);

ps = conn.prepareStatement(sql);

ps.setInt(1, 400);

ps.executeUpdate();

System.out.println("insert");

}

catch (Exception ex)

{

ex.printStackTrace(System.out);

}

finally

{

try

{

if(ps!=null)

ps.close();

if(conn!= null)

conn.close();

}

catch (SQLException ex)

{

ex.printStackTrace(System.out);

}

}

}