当前位置:  技术问答>java相关

用jsp怎样实现将word文件内容存入数据库中的大对象字段中?

    来源: 互联网  发布时间:2015-08-28

    本文导语:  我的想法是首先把word文档中的内容转换成二进制码,再存入数据库的大对象字段中(BLOB)。读取的实后在再把二进制代码转换成字符,显示出来。这种方法在ASP中是可以实现的。不知道相类似的方法在JSP中是否存在...

我的想法是首先把word文档中的内容转换成二进制码,再存入数据库的大对象字段中(BLOB)。读取的实后在再把二进制代码转换成字符,显示出来。这种方法在ASP中是可以实现的。不知道相类似的方法在JSP中是否存在。那为仁兄知道的话,能否指点指点,小弟感激不尽!!!

|
参考下面的bean:
package demo;

import java.sql.*;
import java.io.*;
import oracle.sql.BLOB;
import oracle.jdbc.*;

//此程序的作用:向test(字段为name varchar2;b blob)库,插入一个文件(read.txt),再将其从库中读出,写到ok.txt中

public class orablob
{
  public void orablob()
{}
  public static void insertblob()
  {
  try
  {
//首先是将文件输入到数据库。
    Class.forName("oracle.jdbc.driver.OracleDriver");//注册数据库引擎。
    Connection conn= DriverManager.getConnection("dburl=jdbc:oracle:thin:@yf:1521:kjb", "kjb", "KJBMostJ2EEOraDB");//建立连接串
    conn.setAutoCommit(false);//关闭自动提交,以提高性能。
    Statement stmt=conn.createStatement();//建立会话
   
   try
   {
     stmt.execute ("drop table test");
   }
   catch (SQLException e)
   {
     // An exception could be raised here if the table did not exist already.
   }
  stmt.execute ("create table test (fname varchar2(600),bx blob)");

    File file=new File("D:\test\Icon.jpg");
    InputStream is=new FileInputStream(file);//创建输入流,将外部文件输入到InputStream 中。
    System.out.print(file.length());
    byte[] blobByte=new byte[is.available()];
   is.read(blobByte);
   is.close();
    PreparedStatement pstmt=conn.prepareStatement("INSERT INTO TEST  VALUES (?,?)");
    pstmt.setString(1,file.getName());
    pstmt.setBinaryStream(2,(new ByteArrayInputStream(blobByte)), blobByte.length);
    pstmt.executeUpdate();//将文件流插入到数据库中。
    pstmt.close();

//以下是从库中读取文件。
    ResultSet rset=stmt.executeQuery("SELECT * from test");
    while (rset.next())
      {// Get LOB locators into Java wrapper classes.
        BLOB blob=((OracleResultSet)rset).getBLOB(2);//获取文件字段。
        // int chunk=blob.getChunkSize();
       int chunk=blob.getChunkSize();
      byte [] buffer=new byte[chunk];
        System.out.println(chunk);

        File binaryFile=new File("D:\test\Ora.java");
        FileOutputStream fileoutstream=new FileOutputStream(binaryFile);//创建文件输出流。
        InputStream instream=blob.getBinaryStream();//建立输入流,并将字段comment的值以流的形式,放入instream变量。
        instream.read(buffer,0,chunk);//将文件流存入变量buffer,以buffer为中转
        fileoutstream.write(buffer,0,chunk);//将buffer写入文件输出流。
        System.out.println("write ok!");
        instream.close();//关闭流
        fileoutstream.close();
      }
    rset.close();
    stmt.close();
    conn.close();
    System.out.print("ok");
  }
  catch(Exception ee)
  {
      System.out.println(ee.getMessage());
  }
  }
      public static void main(String args[])
    {
     insertblob();
}

}

    
 
 

您可能感兴趣的文章:

  • jsp存入数据库中文字符变为乱码,怎么处理?谢先了!
  • 太奇怪了,jsp中的rs数据集其他的字段都能取出来,但就是有一两个字段取不出来,这是为什么?
  • 后台数据库是Access,如何将一个文件用jsp写入OLE对象字段??????
  • 如何在jsp中得到数据库中某张表的字段?
  • 关于jsp中取数据库中字段名的问题(急急急急急,马上解答马上给分)
  • 在jsp中,如何来提取sql7.0中的时间字段,急急!!!!
  • 如何将数据库表中每个字段的字段描述在JSP文件中显示出来?
  • jsp如何选择更新oracle的date字段
  • JSP如何写和读大字段
  • 怎么样在JSP得到一个DATE的数据,并把他写到SQLSERVER的datetime字段里面?
  • 请问那位高手能帮我解决在jsp中将本地文件上传到数据库服务器的一个字段中的问题
  • jsp操作数据库的问题?(实现某个字段逐渐加减1的方法)
  • jsp显示oracle中varchar2类型字段 在线等待
  • eidt.jsp对网页进行编辑,网页内容存放在数据库中,其中有些字段用textarea多行编辑框显示,保存提交数据库后,再次对它编辑,那些用多行
  • 奇怪!奇怪!我用jbuilder编jsp程序,从数据库中取出的字符串型字段却显示16进制数
  • 请问在jsp中将系统当前时间插入到Oracle中Date字段中?(很急,在线等待)
  • 用jsp写Oracle里的clob型字段的问题,求救!!!
  • 小妹求教!!关于jsp操作oracle数据库操作的问题(文件读取,插入数据库表相应字段中)
  • 高分求救:谁用过JSP处理ORACLE数据库中的LONG RAW类型字段
  • 向高手求救,JSP程序在进行数据库查询时的条件字段的中文问题!!!
  • 请教啦,如何把数据库中blob字段存储的图片在jsp页面中显示出来?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 帮帮新手,jsp面向对象吗?想把c/s结构的引用用jsp改写,交互功能可以实现吗
  • 如何将JSP的out对象传递给JSP引用的bean?
  • 能在JavaScript中访问Jsp页面的Java对象?
  • JSP开发入门(四)--JSP的内部对象
  • jsp Recordset 对象有 PageSize 成员吗
  • JSP 获取Spring 注入对象示例
  • 请问各位对于jsp中用到的对象怎么查找它的帮助!
  • 请教:关于JSP的request对象的问题
  • 请教在Servlet中如何取得JSP中提交的radio对象和checkbox的值?
  • 请教:为什么在<%!...%>内部定义的函数不能用jsp页面缺省的对象如:out,request,session,等。
  • Servlet如何返回一个对象给JSP(No Session)?
  • 如何将jsp的参数或对象传递给javascript的函数
  • 重分悬赏!!!哪儿有关于JAVA,JSP的各种对象,方法,属性的详细的中文参考书下载.(140分,分批给)
  • 为什么新生成一个session对象后,jsp page中的scope=session的bean会不正常?
  • 在线等待:jsp内置对象的详细使用例子.要代码.如果给出详细资料也可考虑给分.100大洋伺候.
  • JSP运行原理和九大隐式对象说明
  • JSP的内部对象
  • java或者是jsp中处理字符串、时间等的函数在那里可以查到资料?或者他们都是采用对象的方式?那么资料在那里可以查到?
  • 多个jsp页面共享一个js对象的超级方法
  • window.top[_CACHE]实现多个jsp页面共享一个js对象
  • JSP中清空cookie代码参考
  • 现有1.jsp、2.jsp、3.jsp三个文件,我怎么在3.jsp文件中得到1.jsp中输入的值?
  • 一个框界网爷包含上下两个网页a1.jsp和a2.jsp,怎么实现a1.jsp自身不变且提交数据到下面的a2.jsp呢?不胜感激,急..
  • 请问jsp和serlet之间怎么通讯,jsp和jsp之间呢?
  • 请问<%@include file="abc.jsp"%>与<jsp:include page="abc.jsp"/>之间的差别
  • response.sendRedirect("index.jsp") 和 <jsp:forward page="index.jsp"/>的区别?
  • 想把一个jsp转到另一个jsp页面,要穿参数,中文的(jsp变量)。谁教教我?!
  • aaa.jsp有如下链接,当单击该链接时将id值传递给bbb.jsp,怎样在bbb.jsp中引用这个id值?
  • 如何将jsp的参数或对象传递给javascript的函数 iis7站长之家
  • 谁能告诉我,怎么调试jsp程序呀!我在jsp中调用java,但是Tomcat这家伙只会给我报jsp文件出错。这可怎么办呀?
  • jsp中如何获得当前jsp文件所在的目录,用request.getServletPath()得到的路径含有jsp文件名,有没有办法得到目录(不含文件名)?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3