• 大小: 4.79MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-11-04
  • 语言: 其他
  • 标签: web开发  java  

资源简介

这个是我学习文件上传下载时候做的一个项目,不仅仅是文件的上传下载,做成了一个文件的管理项目。

资源截图

代码片段和文件信息

package com.hexu.controller;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
import java.lang.reflect.Method;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.hexu.model.UploadFile;
import com.hexu.model.User;
import com.hexu.service.ServiceFactory;
import com.hexu.service.UploadFileService;
import com.hexu.service.UserService;
import com.hexu.utils.UploadFilePropertiesUtil;

//@WebServlet(urlPatterns = {“*.ud“})
public class UploadFileController extends HttpServlet{

    UploadFileService ufs = ServiceFactory.getUploadFileService();
    UserService userService = ServiceFactory.getUserService();
    User user = null;

@Override
protected void doGet(HttpServletRequest req HttpServletResponse resp) throws ServletException IOException {
doPost(reqresp);
}

protected void doPost(HttpServletRequest req HttpServletResponse resp) throws ServletException IOException {
        //处理得到具体的操作方法名
       req.setCharacterEncoding(“utf-8“);
       resp.setCharacterEncoding(“utf-8“);
        String mn = req.getServletPath();
        mn = mn.substring(1);
        mn = mn.substring(0 mn.length()-3);
        try {
Method method = this.getClass().getDeclaredMethod(mn HttpServletRequest.class HttpServletResponse.class);
method.invoke(this req resp);
} catch (Exception e) {
e.printStackTrace();

    }

private void index(HttpServletRequest req HttpServletResponse resp) throws IOException ServletException {
List person = ufs.getUploadFileByPerson(user.getUid());
List offer = ufs.getUploadFileByOffer();
req.setAttribute(“user“ user);
req.setAttribute(“person“ person);
req.setAttribute(“offer“ offer);
req.getRequestDispatcher(“index.jsp“).forward(req resp);
//resp.sendRedirect(req.getContextPath()+“/index.jsp“);
}

protected void upload(HttpServletRequest req HttpServletResponse resp) throws ServletException IOException {
    //接受index.jsp页面发来的文件信息
//保存接受的文件工作,不在控制层实现,转发到service实现保存操作
try {
req.setAttribute(“user“ user);
ufs.saveFile(req resp);
//没有抓取到异常,证明上传成功
resp.sendRedirect(req.getContextPath()+“/index.ud“);
}catch(Exception e) {
//让业务层去实现保存文件具体业务的功能代码
//这里获取到异常,注入jsp页面显示(把业务层的异常抛到这里来)
//System.out.println(“contoller‘s:“ + e.getMessage());
req.setAttribute(“errorMsg“ e.getMessage());System.out.println(e.getMessage());
//这里转发的是到控制层的index这个方法
req.getRequestDispatcher(“index.ud“).forward(req resp);
}
}

private void deleteFile(HttpServletRequest req HttpServletResponse resp){
int fid = Integer.parseInt(req.getParam

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-12-05 14:26  uploadweb\
     文件        1301  2018-12-18 22:09  uploadweb\.classpath
     文件         909  2018-12-05 14:26  uploadweb\.project
     目录           0  2018-12-05 14:26  uploadweb\.settings\
     文件         567  2018-12-05 14:26  uploadweb\.settings\.jsdtscope
     文件         364  2018-12-05 14:26  uploadweb\.settings\org.eclipse.jdt.core.prefs
     文件         479  2018-12-05 14:26  uploadweb\.settings\org.eclipse.wst.common.component
     文件         349  2018-12-05 14:26  uploadweb\.settings\org.eclipse.wst.common.project.facet.core.xml
     文件          49  2018-12-05 14:26  uploadweb\.settings\org.eclipse.wst.jsdt.ui.superType.container
     文件           6  2018-12-05 14:26  uploadweb\.settings\org.eclipse.wst.jsdt.ui.superType.name
     目录           0  2018-12-19 12:14  uploadweb\WebContent\
     文件         582  2018-12-19 12:15  uploadweb\WebContent\123.jsp
     目录           0  2018-12-05 14:26  uploadweb\WebContent\meta-INF\
     文件          39  2018-12-05 14:26  uploadweb\WebContent\meta-INF\MANIFEST.MF
     目录           0  2018-12-06 15:43  uploadweb\WebContent\WEB-INF\
     目录           0  2018-12-06 18:27  uploadweb\WebContent\WEB-INF\lib\
     文件      610790  2018-10-27 16:24  uploadweb\WebContent\WEB-INF\lib\c3p0-0.9.1.2.jar
     文件        5848  2018-12-05 17:40  uploadweb\WebContent\WEB-INF\lib\common-annotations.jar
     文件       49572  2018-10-27 18:11  uploadweb\WebContent\WEB-INF\lib\commons-dbutils-1.4.jar
     文件       70604  2018-12-05 12:33  uploadweb\WebContent\WEB-INF\lib\commons-fileupload-1.3.3.jar
     文件      214788  2018-12-05 12:34  uploadweb\WebContent\WEB-INF\lib\commons-io-2.6.jar
     文件      100472  2018-10-27 16:24  uploadweb\WebContent\WEB-INF\lib\commons-pool-1.5.6.jar
     文件     2111338  2018-10-27 16:26  uploadweb\WebContent\WEB-INF\lib\ojdbc6.jar
     文件      206430  2018-11-06 23:34  uploadweb\WebContent\WEB-INF\lib\taglibs-standard-impl-1.2.5.jar
     文件       40153  2018-11-06 23:34  uploadweb\WebContent\WEB-INF\lib\taglibs-standard-spec-1.2.5.jar
     文件        2490  2018-12-19 12:19  uploadweb\WebContent\WEB-INF\web.xml
     目录           0  2018-12-08 15:10  uploadweb\WebContent\image\
     文件       30582  2018-12-08 15:10  uploadweb\WebContent\image\1.jpg
     文件      116802  2018-12-08 15:10  uploadweb\WebContent\image\10.jpg
     文件     1028130  2018-12-08 13:06  uploadweb\WebContent\image\6.jpg
     文件      550286  2018-12-08 13:53  uploadweb\WebContent\image\7.jpg
............此处省略74个文件信息

评论

共有 条评论