jsp 图片文件上传

mac2024-11-22  27

下载架包:commons-fileupload mvn地址 apache: commons-fileupload.jar组件 commons-fileupload.jar依赖commons-io.jar组建 前台:jsp 后台:servlet

------------------------------servlet代码---------图片上传功能------------------- //因为enctype属性

// 设置数据请求的字符编码 request.setCharacterEncoding("utf-8"); // 设置数据响应的字符编码 response.setCharacterEncoding("utf-8"); // 浏览器响应的编码 response.setContentType("text/html;charset=utf-8"); try { // 上传 判断表单提交是否存在multipart属性 boolean isMu = ServletFileUpload.isMultipartContent(request); if (isMu) {// 判断前台的form是否有mutipart属性 // 通过parseRequest解析form中的所有请求字段,并保存到items集合中 // (即前台转递的sno sname spicture此时就保存到了items中) FileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); List<FileItem> items = upload.parseRequest(request); // 遍历items中的数据 () Iterator<FileItem> iter = items.iterator(); // 获取下一行数据 int s1 = -1; String s2 = null; while (iter.hasNext()) { FileItem item = iter.next(); // 根据name 属性名判断item的属性值 //以前拿值是request.getParameter() --iter.getString() if (item.isFormField()) {//判断是表单字段还是 文件字段 if (item.getFieldName().equals("s1")) { s1 = Integer.parseInt(item.getString("utf-8")); System.out.println(s1); } if (item.getFieldName().equals("s2")) { s2 = item.getString("utf-8"); System.out.println(s2); } } else//文件字段 { //文件上传 fileName是获取普通表单字段的Name的值 //getName()是获取文件名 String fileName = item.getName(); //获取文件上传的内容并上传的位置(服务器路径) //upload //获取服务器路径下面的imgs文件目录动态目录 String path = request.getSession().getServletContext().getRealPath("imgs"); File file = new File(path,fileName); item.write(file);//上传 //上传成功 System.out.println(path); System.out.println(fileName+"上传成功"); HttpSession session = request.getSession(); session.setAttribute("name", fileName); response.sendRedirect("1d.jsp"); } } } } catch (FileUploadException e) { e.printStackTrace(); }// 解析请求 catch (Exception e) { e.printStackTrace(); } }

-------------------------------------前台代码----------------------------------------------- <%@ page language=“java” contentType=“text/html; charset=UTF-8” pageEncoding=“UTF-8”%> <%@ taglib uri=“http://java.sun.com/jstl/fmt_rt” prefix=“fmt” %>

Insert title here 上传
最新回复(0)