实现多文件上传功能(使用多个input type=file实现)

实现多文件上传功能(使用多个input type=file实现)
项目结构:
upload.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <form action="/app/upload6" enctype="multipart/form-data"  method="post">

        <input type="file" name="image" ><br>
        <input type="file" name="txt"><br>
        <input type="text" name="username"><br>
        <input type="password" name="password"><br>
        <input type="submit">
    </form>
</body>
</html>

User.java(JavBean数据封装)

package com.cskaoyan.request;

public class User {
    
    

    private String username;
    private String password;
    private String image;
    private String txt;
    
    public User() {
    
    
    }

    public String getUsername() {
    
    
        return username;
    }

    public void setUsername(String username) {
    
    
        this.username = username;
    }

    public String getPassword() {
    
    
        return password;
    }

    public void setPassword(String password) {
    
    
        this.password = password;
    }

    public String getImage() {
    
    
        return image;
    }

    public void setImage(String image) {
    
    
        this.image = image;
    }

    public String getTxt() {
    
    
        return txt;
    }

    public void setTxt(String txt) {
    
    
        this.txt = txt;
    }

    @Override
    public String toString() {
    
    
        return "User{" +
                "username='" + username + '\'' +
                ", password='" + password + '\'' +
                ", image='" + image + '\'' +
                ", txt='" + txt + '\'' +
                '}';
    }
    
}

MyServlet.java

package com.cskaoyan.request;

import com.cskaoyan.request.User;
import com.cskaoyan.request.utils.FileUploadUtils;
import org.apache.commons.beanutils.BeanUtils;

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 java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.util.Map;

@WebServlet("/upload6")
public class MyServlet extends HttpServlet {
    
    
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    
    

    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    
    
        resp.setContentType("text/html;charset=utf-8");

        try {
    
    
            User user = new User();
            Map<String, String> map = FileUploadUtils.parseRequest(req);
            BeanUtils.populate(user, map);
            resp.getWriter().println("上传成功,即将显示上传信息。");
            System.out.println(user.toString());
            getServletContext().setAttribute("user", user);
            resp.setHeader("refresh", "8; url=" + req.getServletContext().getContextPath() + "/view");

        } catch (IllegalAccessException e) {
    
    
            e.printStackTrace();
        } catch (InvocationTargetException e) {
    
    
            e.printStackTrace();
        }
    }
}

ViewServlet.java

package com.cskaoyan.request;

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 java.io.IOException;

@WebServlet("/view")
public class ViewServlet extends HttpServlet {
    
    
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    
    
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    
    
        User user = (User) getServletContext().getAttribute("user");

        response.getWriter().println("<!DOCTYPE html>\n" +
                "<html lang=\"en\">\n" +
                "<head>\n" +
                "    <meta charset=\"UTF-8\">\n" +
                "    <title>Title</title>\n" +
                "</head>\n" +
                "<body>");
        response.getWriter().println("<div>" + user.getUsername() + "</div>");
        response.getWriter().println("<div>" + user.getPassword() + "</div>");
        response.getWriter().println("<div><img src='" + request.getContextPath() + "/" + user.getImage() + "' /></div>");
        response.getWriter().println("<iframe src=" + request.getContextPath() + "/" + user.getTxt() + "></iframe>");
        response.getWriter().println("</body>\n" +
                "</html>");

    }
}

结果输出:
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/gy99csdn/article/details/114276043