web项目,文件上传的servlet和下线注销登录的servlet实例。
2020-01-15 11:54
711 查看
下线注销的servlet
需要删除session中的元素
package com.web.servlet; import java.io.IOException; 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 javax.servlet.http.HttpSession; /** * 删除Sesseion的Servlet * @title OffLineServlet.java */ @WebServlet("/offline") public class OffLineServlet extends HttpServlet { private static final long serialVersionUID = -5650668628983715930L; @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { HttpSession session = req.getSession(); session.invalidate();// 消毁Session对象 } }
文件上传的servlet1
package com.web.servlet; import java.io.File; import java.io.IOException; import java.util.Collection; import javax.servlet.ServletException; import javax.servlet.annotation.MultipartConfig; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.Part; /** * 使用Servlet3.0的方式来实现文件上传 * @title FileUploadServlet2.java */ @WebServlet("/upload2") @MultipartConfig // 文件上传时,必须加此注解 public class FileUploadServlet2 extends HttpServlet { private static final long serialVersionUID = -521774852308829697L; @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String username = request.getParameter("username"); System.out.println("username = " + username); String path = this.getServletContext().getRealPath("/upload"); File dir = new File(path); if (!dir.exists()) { dir.mkdirs(); } Part part = request.getPart("file"); String contentType = part.getContentType(); System.out.println("contentType = " + contentType); long size = part.getSize(); System.out.println("size = " + size); String name = part.getName(); System.out.println("name = " + name); String header = part.getHeader("Content-Type"); System.out.println("header = " + header); System.out.println("-------------"); Collection<String> names = part.getHeaderNames(); for (String name1 : names) { //System.out.println("name1 = " + name1); //String header2 = part.getHeader(name1); ///System.out.println("header2 = " + header2); System.out.println(name1 + " : " + part.getHeader(name1)); } String header2 = part.getHeader("content-disposition"); System.out.println("" + header2); part.write(path + "/aa.jpg"); } }
文件上传2
package com.web.servlet; import java.io.File; import java.io.IOException; 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 org.apache.commons.fileupload.FileItem; import org.apache.commons.fileupload.FileUploadException; import org.apache.commons.fileupload.disk.DiskFileItemFactory; import org.apache.commons.fileupload.servlet.ServletFileUpload; import com.bean.User; import com.util.FileUtil; /** * 实现文件上传 * @title FileUploadServlet.java */ @WebServlet("/upload") public class FileUploadServlet extends HttpServlet { private static final long serialVersionUID = 7217537648094673097L; @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { User user = new User(); // 判断是否为文件上传 if (ServletFileUpload.isMultipartContent(request)) {// 如果是 // 创建DiskFileItemsFactory对象 DiskFileItemFactory factory = new DiskFileItemFactory(); // 创建ServletFileUpload处理文件上传对象 ServletFileUpload upload = new ServletFileUpload(factory); try { // 通过ServletFileUpload对象来获取request对象 List<FileItem> items = upload.parseRequest(request); if (items == null || items.size() == 0) { return; } else { // 循环处理 for (FileItem item : items) { // 判断是否为普通表单项 if (item.isFormField()) { // 普通表单项 //String username = item.getFieldName(); String value = item.getString(); //System.out.println(username + " = " + value); user.setUsername(value); } else {// 文件项 // 获取要上传的表单项 //String _file = item.getFieldName(); String fileName = item.getName(); //String value = item.getString(); //String contentType = item.getContentType(); //System.out.println(contentType); //System.out.println(_file + " = " + FileUtil.getFileExt(fileName)); // 获取存放上传文件的目录路径 String path = this.getServletContext().getRealPath("/upload"); File dir = new File(path); if (!dir.exists()) { dir.mkdirs(); // 如果目录不存在,则创建 } // 重新生成一个新文件名称 String name1 = FileUtil.buildFileName(FileUtil.getFileExt(fileName)); System.out.println("name1=" + name1); //String name2 = FileUtil.buildFileNameByUUID(FileUtil.getFileExt(fileName)); //System.out.println("name2=" + name2); // 保存文件 item.write(new File(path, name1)); // 删除临时文件 item.delete(); user.setAvtar("upload/" + name1); user.setSrcImage(fileName); } } } System.out.println(user); // userService.save(user); } catch (FileUploadException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } finally { } } } }
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- webuploader项目中多文件上传实例
- 【Java.Web】Servlet —— 实例 之 上传文件
- Android之Http请求实例(文件上传+servlet接收)
- web.py文件上传实例
- SpringMVC中使用StandardServletMultipartResolver上传文件实例
- Android中发送Http请求实例(包括文件上传、servlet接收)
- zz:Android中发送Http请求实例(包括文件上传、servlet接收)
- JavaWeb开发知识总结(annotation,Servlet3.0,文件上传,动态代理)
- 使用Maven创建Web项目后,jsp引入静态文件提示报错。JSP 报错:javax.servlet.ServletException cannot be resolved to a type
- Java.Web - JSP文件上传,Servlet接收文件
- myeclipse中建web项目上传文件到hadoop,出现文件上传上去了,但是文件大小为0或小于当前文件解决方案
- Web项目中文件上传Filter处理
- Servlet之ServletContext获取获取web项目的资源文件
- Servlet3.0学习总结之基于Servlet3.0的文件上传实例
- 17.12.26,web学习第三十三天,还有一年,努力吧青年 商城项目第六天 ajax,文件上传
- 使用Maven创建Web项目后,jsp引入静态文件提示报错。JSP 报错:javax.servlet.ServletException cannot be resolved to a type
- JavaWeb项目实现文件上传动态显示进度实例
- Android中发送Http请求实例(包括文件上传、servlet接收)
- JavaWeb中struts2实现文件上传下载功能实例解析
- 使用Maven创建Web项目后,jsp引入静态文件提示报错。JSP 报错:javax.servlet.ServletException cannot be resolved to a type