资源简介
这个是我学习文件上传下载时候做的一个项目,不仅仅是文件的上传下载,做成了一个文件的管理项目。
代码片段和文件信息
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.xm
文件 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\me
文件 39 2018-12-05 14:26 uploadweb\WebContent\me
目录 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.xm
目录 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个文件信息
- 上一篇:14229中文版
- 下一篇:MG995舵机基于STM32的驱动源代码
相关资源
- jxse-doc-2.5
- 医药进销存管理系统(C/S架构)含说
- 面向顾客的点菜系统
- 测试驱动开发_中文版+英文版(Kent
- Spring Boot实战
- SSH网上商城项目源代码完整
- 基于Vue的仓库管理前端工程
- 工作中用到的spring项目经验
- 简易版图书信息管理系统
- 基本MVC模式的新闻发布管理系统
- Spring MVC Cookbook.pdf英文版
- 雷文同学的象棋游戏
- 模仿天猫的首页 登陆注册
- 易买网项目源码
- ssm智夫子答题系统
- 电影院网上订票系统
- Struts2 (登陆+增删改查+数据库文件
- ssh医院管理系统
- 配置好的webpack4的项目
- google earth api
- Idea实现WebService
- POI 完美生成带文字水印的excle
- 海康控件web开发包3.0
- NodeJs+Angular+Mongodb Web开发2
- 全面认识前端知识领域PPT
- 基于struts2的网上书店系统
- 网上作业提交系统
- KTV管理系统Swing界面,含源码
- eclipse开发计算器app
- io文档文档
评论
共有 条评论