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

100分求原码(上传下载.doc)

    来源: 互联网  发布时间:2015-09-07

    本文导语:  100分求上传下载原码,一定给分:   哪位高手有把Word文档上传到服务器或在客户端下载服务器的Word文件的原码,最好是Jsp页面通过Servlet处理。效果好在加100分,君子一言,驷马难追!也可以发Email:ox9697@sina.com ...

100分求上传下载原码,一定给分:
  哪位高手有把Word文档上传到服务器或在客户端下载服务器的Word文件的原码,最好是Jsp页面通过Servlet处理。效果好在加100分,君子一言,驷马难追!也可以发Email:ox9697@sina.com

|
    //上传用户的附件
     String filename = (String)request.getParameter("file.filename") ;
 String inputfile = (String)request.getParameter("file") ;
 out.println(filename);
     if ( filename != null && filename.length() != 0)
 {//没有文件上传
        if (!filename.toUpperCase().endsWith(".ZIP") &&!filename.toUpperCase().endsWith(".RAR") && !filename.toUpperCase().endsWith(".TXT") && !filename.toUpperCase().endsWith(".DOC")   ) 
    {
            out.println("alert('上传的文件必须是zip或者rar格式的压缩文件或者以.TXT,.DOC结尾的文本文件');");
            return; 
         }
    
       String savedDir = application.getRealPath("/netoffice/OA/personal-mgmt/Zhaopin/seekdir/")+jobapp_no+"/" ;
       File ttfile = new File(savedDir); 
       if ( !ttfile.exists() )   ttfile.mkdirs();  

       FileInputStream  is = new FileInputStream(inputfile);             //定义文件输入流
       String outputfile = savedDir +"seeker"+ filename.substring(filename.length()-4).toLowerCase();
   FileOutputStream os = new FileOutputStream(outputfile);
      
       int ch;
       while ((ch = is.read()) >= 0)  os.write(ch);
       is.close(); 
       os.close();
 }

|
package mshtang.large;


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

import mshtang.html.DatabaseForHtml;

public class LargeObjectAction
{
  public void orablob()
  {
  }


  public static void insertblob()
  {
    try
    {
      //首先是将文件输入到数据库。
      Class.forName("oracle.jdbc.driver.OracleDriver");//注册数据库引擎。
      String dbURL = "jdbc:oracle:thin:@192.168.0.74:1521:orcl";
      String user = "pm";
      String passWord = "pm";
      Connection conn = DriverManager.getConnection(dbURL, user, passWord);
      conn.setAutoCommit(false);//关闭自动提交,以提高性能。
      Statement stmt = conn.createStatement();//建立会话
      DatabaseForHtml sqlBean = new DatabaseForHtml();
      String sqlStr = "";
      String fileName = "";
      String displayMessage = "";
      try
      {
        sqlStr = "select table_name from user_tables where table_name='JPGTEST'";
        if(!sqlBean.hasResult(conn, sqlStr))
        {
          displayMessage = (stmt.executeUpdate("create table JPGTEST (fname varchar2(600), bx blob)") == 0) ? "table created successfuly" : "table created failure";
          System.out.println(displayMessage);
        }
        File file = new File("C:\25.jpg");
        fileName = file.getName();
        FileInputStream inStream = new FileInputStream(file);//创建输入流,将外部文件输入到InputStream 中。
        byte[] buffer = new byte[inStream.available()];
        sqlStr = "INSERT INTO JPGTEST VALUES ('" + fileName + "', empty_blob())";
        stmt.execute(sqlStr);
        ResultSet rs = stmt.executeQuery("select bx from JPGTEST where fname='" + fileName + "' for update");
        if(rs.next())
        {
          BLOB blob = ((OracleResultSet)rs).getBLOB("bx");
          OutputStream outStream = blob.getBinaryOutputStream();
          inStream.read(buffer);
          outStream.write(buffer);
          outStream.flush();
          stmt.execute("commit");
          outStream.close();
          System.out.println("文件成功写入数据库");
        }
        inStream.close();
        rs.close();
      }
      catch(SQLException e)
      {
        e.printStackTrace();
        System.out.println("数据库异常:" + e.getMessage());
      }
      //以下是从库中读取文件。
      sqlStr = "SELECT * from JPGTEST where fname='" + fileName + "'";
      System.out.println(sqlStr);
      ResultSet rset = stmt.executeQuery(sqlStr);
      if(rset.next())
      {
        BLOB blob = ((OracleResultSet)rset).getBLOB("bx");//获取文件字段。
        InputStream inStream = blob.getBinaryStream();//建立输入流,并将字段bx的值以流的形式,放入inStream变量。
        File binaryFile = new File("D:\test\" + fileName);
        FileOutputStream fileOutStream = new FileOutputStream(binaryFile);//创建文件输出流。
        int by = inStream.read();
        while(by != -1)
        {
          fileOutStream.write(by);
          by = inStream.read();
        }
        fileOutStream.flush();
        System.out.println("文件从数据库中成功读出");
        inStream.close();//关闭流
        fileOutStream.close();
      }
      rset.close();
      stmt.close();
      conn.close();
    }
    catch(Exception ee)
    {
      System.out.println(ee.getMessage());
    }
  }


  public static void insertLongRow()
  {
    try
    {
      //首先是将文件输入到数据库。
      Class.forName("oracle.jdbc.driver.OracleDriver");//注册数据库引擎。
      String dbURL = "jdbc:oracle:thin:@192.168.0.74:1521:orcl";
      String user = "pm";
      String passWord = "pm";
      Connection conn = DriverManager.getConnection(dbURL, user, passWord);
      conn.setAutoCommit(false);//关闭自动提交,以提高性能。
      Statement stmt = conn.createStatement();//建立会话
      DatabaseForHtml sqlBean = new DatabaseForHtml();
      String sqlStr = "";
      String fileName = "";
      String displayMessage = "";
      try
      {
        sqlStr = "select table_name from user_tables where table_name='rowTestTable'";
        if(!sqlBean.hasResult(conn, sqlStr))
        {
//          displayMessage = (stmt.executeUpdate("create table rowTestTable(fileName varchar2(50), detail long raw)") == 0) ? "table created successfuly" : "table created failure";
//          System.out.println(displayMessage);
        }
        File file = new File("C:\工程信息管理系统-内参.doc");
        fileName = file.getName();
        FileInputStream inStream = new FileInputStream(file);//创建输入流,将外部文件输入到InputStream 中。
//        byte[] buffer = new byte[inStream.available()];
        PreparedStatement pstmt = conn.prepareStatement("insert into rowTestTable values('" + fileName + "', ?)");
        pstmt.setBinaryStream (1, inStream, (int)file.length());
        if(pstmt.executeUpdate() == 1)
        {
          System.out.println("ok");
        }
        else
        {
          System.out.println("bad");
        }
        inStream.close();
      }
      catch(SQLException e)
      {
        e.printStackTrace();
        System.out.println("数据库异常:" + e.getMessage());
      }
      //以下是从库中读取文件。
      sqlStr = "SELECT * from rowTestTable where fileName='" + fileName + "'";
      System.out.println(sqlStr);
      ResultSet rset = stmt.executeQuery(sqlStr);
      if(rset.next())
      {
//        BLOB blob = ((OracleResultSet)rset).getBLOB("bx");//获取文件字段。
        InputStream inStream = rset.getBinaryStream("detail");//建立输入流,并将字段bx的值以流的形式,放入inStream变量。
        File binaryFile = new File("D:\test\" + fileName);
        FileOutputStream fileOutStream = new FileOutputStream(binaryFile);//创建文件输出流。
        int by = inStream.read();
        while(by != -1)
        {
          fileOutStream.write(by);
          by = inStream.read();
        }
        fileOutStream.flush();
        System.out.println("文件从数据库中成功读出");
        inStream.close();//关闭流
        fileOutStream.close();
      }
      rset.close();
      stmt.close();
      conn.close();
    }
    catch(Exception ee)
    {
      System.out.println(ee.getMessage());
    }
  }

  public static void main(String args[])
  {
//    insertblob();
    insertLongRow();
  }
}

|
到www.jspsmart.com下载一个jspsmartupload的bean,用参考下面:

a.htm:




文件上传页面




  
    文件上传
  
  
    
    
    

    

    

    

         
    
    
  




2、upload.jps:






文件上传确认







以上实现上传文件到fileupload文件夹(在您的jsp文件存放夹下,默认为doc)

下载的时候直接指向:response.sendRedirect("/faceupload/"+文件名);

|
看这里!
http://www.jspserver.com:8080/cgi-bin/jspbbs/topic.cgi?forum=9&topic=2&show=

|
用jspsmart。

|
好像有个插件可以用的

    
 
 

您可能感兴趣的文章:

  • Centos6下安装Shell下文件上传下载rz,sz命令
  • 我要做一个论坛,还要能做软件的上传和下载,文件的上传和下载,要求yizi给与帮助!!!
  • ftp协议介绍及ftp常用的上传下载等操作命令使用方法
  • 为什么我上传文件的时候,如果遇到文件名是中文的,虽然可以上传,但不可以下载,怎么解决?
  • FTP上传下载导致文件的损坏
  • Vsftp上传下载的速度怎么配置
  • 有谁做过 thttpd CGI上传下载文件。
  • 各位师哥师姐,我急切求助,关于文件的上传下载程序代码
  • 关于FTP上传下载命令
  • windows如何从Linux的tftp服务器上上传下载东西
  • 求 简单 LINUX 命令 服务器上传下载
  • 一个上传下载的问题,急急!!!!
  • pure-ftpd 上传下载达不到最大速率
  • linux下,开发文件的上传与下载
  • 请问怎样将windows和linux上传下载文件
  • jsp文件上传下载的组件smartupload如何用,哪有给50分??
  • 客户端如何操作服务器的文件(如查看文件列表,上传,下载)(★)
  • 如何用ftp自动传输(上传和下载)
  • pam+vsftpd的方式建立的虚拟用户,只能下载不能上传????
  • 请问那里有SYBASE的jbdb 2.0下载;jspsmartupload可以直接将文件上传到数据库,请问如何使用 iis7站长之家
  • 请问封装好的jsp上传组件有哪些?在哪里下载?jspsmartupload除外
  • 求救,JSP中文件的上传、下载问题
  • 请问那里有SYBASE的jbdb 2.0下载;jspsmartupload可以直接将文件上传到数据库,请问如何使用
  • 一段C++写的上传和下载的代码
  • sun solaris 10 ftp 能上传不能下载和修改。便在cmd下面就可以。
  • c# ftp上传下载的实现代码
  • 下载与上传服务器文件的命令
  • 请问两个问题,http方式的文件上传与下载以及域验证
  • Linux下使用Shell脚本实现ftp的自动上传下载的代码小结
  • 如何处理客户机和服务器使用不同字符集(包括双字节字符)上传或下载文件时文件名的转换问题
  • 100分,高分求助:用ftp server上传和下载文件如何控制路径??
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • hdfs上传下载中,报权限错误,求解释~hadoop开发
  • 帮忙 vsftpd匿名不能上传下载问题新手请教
  • jsp文件上传与下载实例代码
  • vsftp 只能下载不能上传,用root用户登陆,然后上传文件也报错,如下:
  • Jsp页面实现文件上传下载类代码第1/2页
  • 求-----上传和下载(显示)的源代码
  • c# WinForm文件上传下载代码示例
  • VSFTP 问题, 用户登陆后,只能下载,不能上传?
  • asp.net文件上传、下载管理的示例代码
  • vsftp 只能下载不能上传,用root用户登陆,然后上传文件也报错,如下:
  • java如何实现上传和下载(有关书籍也可以)?


  • 站内导航:


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

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

    浙ICP备11055608号-3