精华内容
下载资源
问答
  • 1.首先本小姐很久没写代码,很多东西其实都忘的差不多,特别是Html的一些标签和js更是...但是我用jsp页面做了个demo,原理差不多,只是跟android端传递的不是下载文件数据,而是包含下载路径的下载文件信息,以下是...
    1.首先本小姐很久没写代码,很多东西其实都忘的差不多,特别是Html的一些标签和js更是忘得一塌糊涂,由于这次我们公司要做个上传下载的web服务器,改服务器是跟android客户端提供数据的,也就是说这个ftpweb下载服务器主要是android端提供文件下载等服务的,但是我用jsp页面做了个demo,原理差不多,只是跟android端传递的不是下载文件数据,而是包含下载路径的下载文件信息,以下是我写的小demo;


    2.下面是Jsp页面代码:
    <script type="text/javascript">


    function xiaozhukuaipaoOnclick(){

    var filename = "小猪快跑13.01.apk";
    document.getElementById("form").action="xiazai?fileName="+encodeURI(encodeURI(filename));
    document.getElementById("form").submit();

    }

    function xiaoyazhiOnclick(){

    var filename = "小鸭子.APK" ;
    document.getElementById("form").action="xiazai?fileName="+encodeURI(encodeURI(filename));
    document.getElementById("form").submit();
    // document.forms[0].action + =("&fileName="+filename) ;
    // document.forms[0].submit();
    }

    function GoLiveOnclick(){
    var filename ="GoLive TV.11.02.apk";
    // alert(document.forms[0].action);
    // document.forms[0].action+("&fileName="+filename) ;
    //document.forms[0].action="xiazai?fileName="+filename" ;
    // document.forms[0].submit();
    document.getElementById("form").action="xiazai?fileName="+encodeURI(encodeURI(filename));
    document.getElementById("form").submit();
    }

    </script>

    <form id="form" enctype="multipart/form-data" method="post">
    <li><span>小猪快跑游戏.APK </span>
    <input type="button" value="下载" name="xiaozhukuaipao" id="xiaozhukuaipao" οnclick="xiaozhukuaipaoOnclick()"> </li>

    <li><span>小鸭子.APK </span>
    <input type="button" value="下载" name="xiaoyazhi" id="xiaoyazhi" οnclick="xiaoyazhiOnclick()"> </li>

    <li><span> GoLive TV.11.02.apk </span>
    <input type="button" value="下载" name="GoLive" id="GoLive" οnclick="GoLiveOnclick()"> </li>

    </form>


    3.下面是我的servlet类:


    package download.control;

    import java.io.File;
    import java.io.FileInputStream;
    import java.io.IOException;
    import java.io.OutputStream;


    import javax.servlet.ServletConfig;
    import javax.servlet.ServletContext;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;


    public class DownLoadControlServlet extends HttpServlet {

    private static final long serialVersionUID = 1l;
    private DownLoadControlServlet downLoadControlServlet ;



    public void init() throws ServletException{


    System.out.println("DownLoadControlServlet init()��ʼ��..");
    }

    public void init(ServletConfig config) throws ServletException{
    super.init(config);

    System.out.println("DownLoadControlServlet Config()");
    }
    public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException{
    System.out.println(req+"---"+resp);
    this.doPost(req, resp) ;
    System.out.println("DownLoadControlServlet doGet()");
    }

    public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException{
    System.out.println(req+"---"+resp);
    HttpServletResponse response = resp;
    HttpServletRequest request = req;

    System.out.println("DownLoadControlServlet doGet()");

    // String fileName = req.getParameter("fileName");

    // PrintWriter printWriter = new PrintWriter() ;
    /*if(fileName == null || fileName == ""){

    System.out.print("用户请求下载的文件不存在");


    }
    */
    //将文件流写入浏览器

    OutputStream outputStream = resp.getOutputStream();

    ServletContext servletContext=req.getSession().getServletContext();

    String fileName =req.getParameter("fileName") ;
    File file = new File(servletContext.getRealPath("/WEB-INF/downLoad/"), fileName);
    // File file =new File("D:/download/res/" , "fileName");
    System.out.println(file.getPath()+"-------");
    resp.setHeader("Content-disposition","attachment; filename="+fileName);
    resp.setContentType("application/vnd.ms-excel;charset=GBK");
    resp.setBufferSize(1024);
    resp.setHeader("Cache-Control","no-cache"); //HTTP 1.1
    resp.setHeader("Pragma","no-cache"); //HTTP 1.0
    resp.setDateHeader ("Expires", 0); //prevents caching at the proxy server


    if (file.exists()) {

    FileInputStream fileInputStream = new FileInputStream(file);

    byte[] b = new byte[1024];
    int length;
    while ((length = fileInputStream.read(b)) != -1) {
    outputStream.write(b, 0, length);
    outputStream.flush();
    }
    }
    else {
    System.out.println("下载的文件不存在");
    }


    }
    public void destroy(){

    System.out.println("Servlet destroy()....");

    }




    }


    4.从代码中可以看出我的下载文件是放在webInfo下面的downLoad文件下面,


    5.在web.xml配置servlet应该都会,但是还是写上吧


    <servlet>
    <servlet-name>DownLoadControlServlet</servlet-name>
    <servlet-class>download.control.DownLoadControlServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
    <servlet-name>DownLoadControlServlet</servlet-name>
    <url-pattern>/xiazai</url-pattern>
    </servlet-mapping>
    展开全文
  • 页面 <...文件下载接口</view> <button bindtap="tapdownload">点击下载</button> <image src="{{url}}"/> <view>文件上传接口</view> <view class=

    页面

    <view>网络接口</view>
    <button bindtap="handleTap">发送请求</button>
    
    
    <view>文件下载接口</view>
    <button bindtap="tapdownload">点击下载</button>
    
    <image src="{{url}}"/>
    
    
    <view>文件上传接口</view>
    <view class="container">
      <button type="primary" bindtap="taphandler">点击上传</button>
    </view>
    

    JS

    // pages/test/test.js
    Page({
    
      /**
       * 页面的初始数据
       */
      data: {
        url: ""
      },
      handleTap(e) {
        wx:wx.request({
          url: 'http://localhost/helloworld',
          data: {
            x: '1',
            y: '2'
          },
          enableCache: true,
          enableHttp2: true,
          enableQuic: true,
          method: "GET",
          timeout: 0,
          success: (result) => {
            console.log("request success!");
            console.log(result.data);
          },
          fail: (res) => {
            console.log("request failed!");
            console.log(res.data);
          },
          complete: (res) => {
            console.log("request complete");
          },
        })
      },
      tapdownload(e) {
        wx.downloadFile({
          url: 'https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=2573117116,2199107723&fm=26&gp=0.jpg',
          success: (res)=> {
            console.log("success " + JSON.stringify(res));
            this.setData({
              url: res.tempFilePath
            })
          },
          fail: (err)=> {
            console.log("fail " + JSON.stringify(err));
          },
          complete: (e)=> {
            console.log("complete " + JSON.stringify(e));
          }
        })
      },
      taphandler(e) {
        wx.chooseImage({
          count: 3,//最多可以选择的图片数,默认9
          sizeType: ['original', 'compressed'],//original原图, compressed压缩图,默认都有
          success: (res)=> {
            console.log("success");
            //调用文件上传
            wx.uploadFile({
              filePath: res.tempFilePaths[0],
              name: 'test',
              url: 'http://localhost/upload',
              //http请求中的额外form data
              formData: {
                name: 'tom',
                age : 18
              },
              success: (res)=>{
                console.log("upload success");
              },
              fail: (err)=>{
                console.log(err);
              },
              complete: (e)=>{
                console.log("upload complete");
              }
            })
          },
          fail: (err)=> {
            console.log("fail");
          },
          complete: (e)=> {
            console.log("complete");
          }
        })
      },
    
      /**
       * 生命周期函数--监听页面加载
       */
      onLoad: function (options) {
    
      },
    
      /**
       * 生命周期函数--监听页面初次渲染完成
       */
      onReady: function () {
    
      },
    
      /**
       * 生命周期函数--监听页面显示
       */
      onShow: function () {
    
      },
    
      /**
       * 生命周期函数--监听页面隐藏
       */
      onHide: function () {
    
      },
    
      /**
       * 生命周期函数--监听页面卸载
       */
      onUnload: function () {
    
      },
    
      /**
       * 页面相关事件处理函数--监听用户下拉动作
       */
      onPullDownRefresh: function () {
    
      },
    
      /**
       * 页面上拉触底事件的处理函数
       */
      onReachBottom: function () {
    
      },
    
      /**
       * 用户点击右上角分享
       */
      onShareAppMessage: function () {
    
      }
    })
    

    后台

    @RestController
    public class HelloWorldController {
    
        @GetMapping("/helloworld")
        public Person helloworld(String x, String y) {
    
            Person person = new Person();
            person.setName("tom");
            person.setId(Long.parseLong(x));
            person.setAge(Integer.parseInt(y));
            return person;
        }
    
        @PostMapping("/upload")
        public Person upload(@RequestParam("name") String name, @RequestParam("age")Integer age,
                             @RequestParam("test")MultipartFile test, HttpServletRequest request) {
            Person person = new Person();
            person.setName(name);
            person.setAge(age);
            //处理文件
            String originalFilename = test.getOriginalFilename();
            String path = request.getSession().getServletContext().getRealPath("upload");
            File targetFile = new File(path, originalFilename);
            if (!targetFile.exists()) {
                targetFile.mkdirs();
            }
            try {
                test.transferTo(targetFile);
            }catch (Exception e) {
                e.printStackTrace();
            }
            return person;
        }
    }
    
    展开全文
  • uploadfile上传文件

    2011-04-29 11:33:19
    jsp文件上传大多采用采用开源项目来简化处理,这里列出常用的两个jar包的实现,并进行比较,说明他们的优缺点和应该注意的问题。 Commons FileUpload,可以在http://jakarta.apache.org/commons/fileupload/下载,...
    jsp文件上传大多采用采用开源项目来简化处理,这里列出常用的两个jar包的实现,并进行比较,说明他们的优缺点和应该注意的问题。
    Commons FileUpload,可以在http://jakarta.apache.org/commons/fileupload/下载,这个包需要Commons IO的支持,可以在http://jakarta.apache.org/commons/io/下载
    com.oreilly.servlet,可以在http://www.servlets.com/cos/下载
    Commons FileUpload提供三种文件上传处理方式,DiskFileUpload、ServletFileUpload和PortletFileUpload三种方式,其中DiskFileUpload已经在javadoc下已经被标记为过期的方法,建议用ServletFileUpload代替,而PortletFileUpload需要配合portlet-api来使用,所以这里我们只介绍ServletFileUpload,并且这个也是最常用的。
    com.oreilly.servlet也提供了三种文件上传的处理方式,MultipartWrapper、MultipartRequest和MultipartParser三种方式,其中MultipartWrapper和MultipartRequest的用法基本相同,并且没有MultipartRequest提供的操作多,所以这里介绍MultipartRequest,MultipartParser和前两者有些不同,可以用来处理某些特殊情况,例如表单中有两个同名的文件上传选择框。
    我们暂时称三面三种文件上传方式分别为:ServletFileUpload方式(MultipartTestServlet)、MultipartRequest方式(MultipartTestServlet2)、MultipartParser方式(MultipartTestServlet3)
    代码如下:
    test.html
    <%@ page language="java" import="java.util.*" contentType="text/html;charset=gbk" pageEncoding="gbk"%>
    <html>
    <body>
    <form action="MultipartTestServlet" enctype="multipart/form-data" method="post">
    <input type="text" name="username" /><br />
    <input type="file" name="myfile" /><br/>
    <input type="file" name="myfile" /><br/>
    <input type="submit" />
    </form>
    <br/><br/><br/><br/>
    <form action="MultipartTestServlet2" enctype="multipart/form-data" method="post">
    <input type="text" name="username" /><br />
    <input type="file" name="myfile" /><br/>
    <input type="file" name="myfile" /><br/>
    <input type="submit" />
    </form>
    <br/><br/><br/><br/>
    <form action="MultipartTestServlet3" enctype="multipart/form-data" method="post">
    <input type="text" name="username" /><br />
    <input type="file" name="myfile" /><br/>
    <input type="file" name="myfile" /><br/>
    <input type="submit" />
    </form>
    </body>
    </html>
    MultipartTestServlet.java
    package com.bug.servlet;
    import java.io.File;
    import java.io.IOException;
    import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.List;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import org.apache.commons.fileupload.FileItem;
    import org.apache.commons.fileupload.FileUpload;
    import org.apache.commons.fileupload.FileUploadException;
    import org.apache.commons.fileupload.RequestContext;
    import org.apache.commons.fileupload.disk.DiskFileItemFactory;
    import org.apache.commons.fileupload.servlet.ServletFileUpload;
    import org.apache.commons.fileupload.servlet.ServletRequestContext;
    public class MultipartTestServlet extends HttpServlet {
    public MultipartTestServlet() {
    super();
    }
    public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    request.setCharacterEncoding("gbk");
    RequestContext requestContext = new ServletRequestContext(request);

    if(FileUpload.isMultipartContent(requestContext)){

    DiskFileItemFactory factory = new DiskFileItemFactory();
    factory.setRepository(new File("c:/tmp/"));
    ServletFileUpload upload = new ServletFileUpload(factory);
    //upload.setHeaderEncoding("gbk");
    upload.setSizeMax(2000000);
    List items = new ArrayList();
    try {
    items = upload.parseRequest(request);
    } catch (FileUploadException e1) {
    System.out.println("文件上传发生错误" + e1.getMessage());
    }
    Iterator it = items.iterator();
    while(it.hasNext()){
    FileItem fileItem = (FileItem) it.next();
    if(fileItem.isFormField()){
    System.out.println(fileItem.getFieldName() + " " + fileItem.getName() + " " + new String(fileItem.getString().getBytes("iso8859-1"), "gbk"));
    }else{
    System.out.println(fileItem.getFieldName() + " " +
    fileItem.getName() + " " +
    fileItem.isInMemory() + " " +
    fileItem.getContentType() + " " +
    fileItem.getSize());

    if(fileItem.getName()!=null && fileItem.getSize()!=0){
    File fullFile = new File(fileItem.getName());
    File newFile = new File("c:/temp/" + fullFile.getName());
    try {
    fileItem.write(newFile);
    } catch (Exception e) {
    e.printStackTrace();
    }
    }else{
    System.out.println("文件没有选择 或 文件内容为空");
    }
    }

    }
    }
    }
    }
    MultipartTestServlet2.java
    package com.bug.servlet;
    import java.io.IOException;
    import java.util.Enumeration;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import com.oreilly.servlet.MultipartRequest;
    import com.oreilly.servlet.multipart.DefaultFileRenamePolicy;
    public class MultipartTestServlet2 extends HttpServlet {
    public MultipartTestServlet2() {
    super();
    }
    public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    //request.setCharacterEncoding("gbk"); 不起作用
    System.out.println("start ");
    MultipartRequest multi = new MultipartRequest(request, "c:/tmp/", 2*1024*1024, "gbk", new DefaultFileRenamePolicy());
    System.out.println("start ");
    Enumeration filesName = multi.getFileNames();
    Enumeration paramsName = multi.getParameterNames();
    while(paramsName.hasMoreElements()){
    String paramName = (String) paramsName.nextElement();
    System.out.println(multi.getParameter(paramName));
    }
    while(filesName.hasMoreElements()){
    String fileName = (String) filesName.nextElement();
    System.out.println(multi.getFilesystemName(fileName) + " " +
    multi.getOriginalFileName(fileName) + " " +
    multi.getContentType(fileName) + " ");
    if(multi.getFilesystemName(fileName)!=null && !multi.getFilesystemName(fileName).equals(""))
    System.out.println(multi.getFile(fileName).toURI());
    }
    }

    }
    MultipartTestServlet3.java
    package com.bug.servlet;
    import java.io.File;
    import java.io.IOException;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import com.oreilly.servlet.multipart.FilePart;
    import com.oreilly.servlet.multipart.MultipartParser;
    import com.oreilly.servlet.multipart.ParamPart;
    import com.oreilly.servlet.multipart.Part;
    public class MultipartTestServlet3 extends HttpServlet {
    public MultipartTestServlet3() {
    super();
    }
    public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    MultipartParser mp = new MultipartParser(request, 2*1024*1024, false, false, "gbk");
    Part part;
    while ((part = mp.readNextPart()) != null) {
    String name = part.getName();
    if (part.isParam()) {
    ParamPart paramPart = (ParamPart) part;
    String value = paramPart.getStringValue();
    System.out.println("param: name=" + name + "; value=" + value);
    }
    else if (part.isFile()) {
    // it's a file part
    FilePart filePart = (FilePart) part;
    String fileName = filePart.getFileName();
    if (fileName != null) {
    long size = filePart.writeTo(new File("c:/tmp/"));
    System.out.println("file: name=" + name + "; fileName=" + fileName +
    ", filePath=" + filePart.getFilePath() +
    ", contentType=" + filePart.getContentType() +
    ", size=" + size);
    }
    else {
    System.out.println("file: name=" + name + "; EMPTY");
    }
    System.out.flush();
    }
    }
    }
    }
    web.xml中加入
    <servlet>
    <servlet-name>MultipartTestServlet</servlet-name>
    <servlet-class>com.bug.servlet.MultipartTestServlet</servlet-class>
    </servlet>
    <servlet>
    <servlet-name>MultipartTestServlet2</servlet-name>
    <servlet-class>com.bug.servlet.MultipartTestServlet2</servlet-class>
    </servlet>
    <servlet>
    <servlet-name>MultipartTestServlet3</servlet-name>
    <servlet-class>com.bug.servlet.MultipartTestServlet3</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>MultipartTestServlet</servlet-name>
    <url-pattern>/MultipartTestServlet</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>MultipartTestServlet2</servlet-name>
    <url-pattern>/MultipartTestServlet2</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>MultipartTestServlet3</servlet-name>
    <url-pattern>/MultipartTestServlet3</url-pattern>
    </servlet-mapping>
    问题1、中文问题:
    三种凡是都可以通过自己的方法来设置encoding为gbk开处理和解决中文问题,包括初始化的时候传入gbk作为参数,或是是初始化后通过setEncoding的方式来实现。
    另外ServletFileUpload方式也可以通过request.setCharacterEncoding("gbk");的方式来实现,而其它两种方式不支持这种方式。

    问题2、文件大小限制
    ServletFileUpload方式可以设置文件大小限制,也可以不用设置,例子中的upload.setSizeMax(2000000)就可以注释掉。如果设置upload.setSizeMax(-1),表明不限制上传的大小。文档中没有指明默认的限制的多少,我在不设置的情况下上传了一个9M的东西,可以上传,估计默认是不限制大小的。
    而MultipartRequest方式和MultipartParser方式是必须设置文件的上传文件的大小限制的,如果不设置,默认是1M的大小限制。

    问题3、文件上传发生错误
    如果文件上传过程中发生任何错误,或者是文件的大小超出了范围,系统都将抛出错误。
    ServletFileUpload方式在upload.parseRequest(request)时抛出错误
    MultipartRequest方式在new MultipartRequest(。。。)时抛出错误
    MultipartParser方式在new MultipartParser(。。。)时抛出错误

    问题4、上传同名文件时,他们保存到临时目录是的冲突问题
    ServletFileUpload方式,不会有冲突,系统会把上传得文件按照一定的规则重新命名,保证不会冲突
    MultipartParser方式,会产生冲突,系统会把文件按照上传时的文件名,保存到临时目录下,如果两个用会同时上传文件名相同的文件,那么就可能会产生冲突,一方把另一方的临时文件给替换了。
    MultipartRequest方式,在初始化时如果提供了一个名称转换策略,就不会有冲突,如果不提桶,就会有冲突。在上面的例子中我们提供了一个new DefaultFileRenamePolicy()保证了文件名不会有冲突发生。

    问题5:表单中有两个同名的文件上传选择框,就像我们例子中的myfile一样,每个表单中有两个name=“myfile”的上传框
    ServletFileUpload方式,可以处理,可以分别得到他们各自的文件,
    MultipartRequest方式,不可以处理,会发生冲突,会有一个上传框的文件覆盖了另外一个。
    MultipartParser方式,可以处理,可以分别得到他们各自的文件,

    备注:
    代码比较乱,主要是为了说明他们间的区别。他们的详细地使用说明还是要参考他的javadoc和domo。
    展开全文
  • 1.win7磁盘权限的问题,文件夹权限问题 解决方法: 链接:...2.是否是文件名没写,只写路径 下载: public class DownLoadServlet extends HttpServlet { private static final long s

    1.win7磁盘权限的问题,文件夹权限问题

    解决方法:

    链接:http://jingyan.baidu.com/article/f71d6037582b441ab641d195.html

    2.是否是文件名没写,只写路径

    下载:

    public class DownLoadServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;  
        public DownLoadServlet() {    
        }
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    doPost(request, response); 
    }


    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    request.setCharacterEncoding("utf-8");
    String filename=request.getParameter("filename");
    String filepath=request.getParameter("filepath");
    System.out.println(filename);
    System.out.println(filepath);
    response.setContentType("application/-msdownload");
    // response.setHeader("Content-disposition","attachment;filename="+filename);
    response.setHeader("Content-disposition","attachment;filename="+new String(filename.getBytes("GBK"),"ISO-8859-1"));

    FileInputStream fis=new FileInputStream(filepath);
    byte[] data =new byte[fis.available()];
    fis.read(data);
    fis.close();
    OutputStream os=response.getOutputStream();
    os.write(data);
    os.close();
    }
    }



    上传:

    public class uploadServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
        public uploadServlet() {
              }
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    doPost(request, response);
    }


    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    response.setContentType("text/html;charset=utf-8");
    request.setCharacterEncoding("utf-8");
     
    FileItemFactory factory=new DiskFileItemFactory(); 
    ServletFileUpload sf=new ServletFileUpload(factory);
    List<FileItem> flist=null;
             try {
    flist=sf.parseRequest(request);
    for(FileItem   f:   flist){

    //判断是否是表单域
    if(f.isFormField()){
      //System.out.println(f.getFieldName());

    //判断表单域中name值是否为username
    if(f.getFieldName().equals("username")){
    String username=f.getString("utf-8");
    //System.out.println("username:"+username);
    }

    if(f.getFieldName().equals("password")){
    String password=f.getString();
    //System.out.println("password:"+password);
    }
      }else{
     // System.out.println(f.getName());
    // String uri="c:\\"+f.getName();
    // File file=new File(uri);
    // f.write(file);
           String filename=f.getName();//得到上传的文件名
           String extraname=filename.substring(filename.lastIndexOf(".")+1);//截取文件名后 . 后面的后缀名  
                     String uri = this.getServletContext().getRealPath("file");
                     //System.out.println(uri);
                     if(extraname.equals("jpg") || extraname.equals("gif")){
                              File fi=new File(uri);

    //如果文件不存在,创建文件
                              if(!fi.exists()){    
                            fi.mkdirs(); 
                              }
                               File file=new File(fi,f.getName());
                               f.write(file);
                             // f.write(fi);
                     }else{
                        System.out.println(f.getName()+"没有上传成功");
                     }

    }
    }
    } catch (FileUploadException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } catch (Exception e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }  
    }
    }

    jsp:

    上传

    <form action="UplodServlet" method="post" enctype="multipart/form-data">
    用户名:<input type="text" name="username"><br>
    上传文件:<input type="file" name="file"><br>
    <input type="submit" value="提交">
    </form>


    下载:

    <form action="DownloadServlet1" method="post">
     <input type="hidden" name="filepath" value="D:\file\商品表.sql">
     <input type="hidden" name="filename" value="商品表.sql">
     <input type="submit" value="下载">
    </form>

    下载的jsp要是没有写    文件名 商品表.sql     也会显示拒绝访问

    展开全文
  • comons包导入IDEA失败?文件上传后在工程中相应的文件夹下找不到上传的文件? 近期想要基于hadoop分布式系统开发一个云盘项目。前些时候已经给IDEA配置好了tomcat的...需要下载下面两个jar包。 comons-fileupl...
  • uploadfile组件是apache开发的用于文件上传的Java组件。笔者经过研究,终于实现了动态多文件向数据库上传,现将示例程序介绍如下:  1.组件:笔者使用的是commons-upload-1.2.jar和commons-io-1.3.2.jar,下载后将...
  • 需求在页面端可以在页面不刷新情况下上传多个有大小限制的word文件,并返回...下载地址: http://plugins.jquery.com/uploadfile/ 帮助文档:http://hayageek.com/docs/jquery-upload-file.php#showold准备 下载该插
  • 文件上传下载

    千次阅读 2013-10-08 09:43:54
    struts2 + spring action中文件上传和下载 文件上传: 1、保存到Tomcat中 public String uploadFile() throws Exception{ String abslutePath = ServletActionContext.getServletContext().getRealPath(savePath); ...
  • Jquery.Uploadify是JQuery的一个上传插件,实现的效果非常不错,支持多文件上传、带进度显示。不过官方提供的实例时php版本的,本文将详细介绍Uploadify在js中的使用,您也可以点击下面的链接进行演示或下载。官方...
  • Ajax UpLoadFile 多个大文件上传控件,已更新。下载控件及范例
  • Servlet实现文件下载

    2017-12-11 22:36:52
    Insert title here ... (图片)下载 UploadFile UploadFile xinfei.code.file.UploadFile UploadFile /uploadFile public class UploadFile extends HttpServlet { protected void d
  • springboot实现文件下载文件上传

    千次阅读 2018-04-16 23:34:42
    /uploadFile") public @ResponseBody String singleFileUpload(@RequestParam("file")MultipartFile file){ //判断文件是否为空 if(file.isEmpty()){ return "文件为空,上传失...
  • UploadFile.rar

    2019-07-31 15:37:10
    C#源码,FTP操作类和Http操作类,上传文件、续传文件下载文件、获取文件大小等。
  • 文件下载例子

    万次阅读 2018-12-10 11:14:20
    * 检索列表中下载附件 * 传入参数:@param uploadFile * 传入参数:@param request * 返回类型:void */ @RequestMapping(value = &quot;/downloadFile&quot;) public void downloadFile...
  • 本篇博客介绍微信小程序如何将文件上传到服务器,如何从服务器下载文件,主要步骤如下: 搭建服务器 uploadFile上传文件 downloadFile下载文件 搭建服务器 既然想要将文件上传到服务器,那么我们首先要搭建一台...
  • 文件下载

    2017-03-16 10:38:51
    js代码: function downloadFujian() { $('#fileDetailForm').form('submit', ...url : basePath+'/ResourceController/uploadFile', success : function(result) { var data = eval('('+result+')'); if(data==1)
  • spring上传下载文件

    2016-12-11 19:54:41
    上传文件:@RequestMapping(value = "/uploadFile", method = RequestMethod.POST) public void uploadFile(HttpServletRequest request) { MultipartHttpServletRequest multipartRequest =
  • 本文实例为大家分享了java文件上传下载的具体代码,供大家参考,具体内容如下文件上传@RequestMapping(value="/uploadFile",method=RequestMethod.POST)public ResultObject uploadFiles(@RequestParam("file")...
  • SpringBoot多文件上传 文件上传 @PostMapping("/fileUpload") public ResponseTemplate handleFormUploadFile(@RequestParam("uploadfile") List<MultipartFile> uploadfile, HttpServletRequest request) {...
  • 本文实例为大家分享了java文件上传下载的具体代码,供大家参考,具体内容如下文件上传@requestmapping(value="/uploadfile",method=requestmethod.post)public resultobject uploadfiles(@requestparam("file")...
  • SpringBoot文件上传、删除及下载最近的项目中,需要将文件保存项目的根目录路径下,特此记录下文件的操作:文件上传/*** 文件上传(相对路径)** @param uploadFile 文件* @param request 参数* @return 文件路径*/...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 551
精华内容 220
关键字:

下载uploadfile文件