如何知道jsp中有多少对象类型=“文件”

时间:2013-10-19 06:28:44

标签: java jsp servlets

我创建了一个表单,用于将图像上传到mysql数据库的blob字段中。

在servlet中,我在jsp页面的type =“file”字段中获得了想象。

  Part filePart = request.getPart("Name_of_the_FILE_fields");  

现在我想让用户同时上传更多图片,所以我在jsp页面中输入了很多type =“file”字段。

我以为我可以做这样的事情

 Part filePart[] =request.getParameterValues("Name_of_the_FILE_fields");

但当然这不是正确的方法。

1 个答案:

答案 0 :(得分:0)

这是您可以使用的脚本。

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {

    String savePath = request.getServletContext().getRealPath("") + File.separator + "files";       

    File fileSaveDir = new File(savePath);
    if (!fileSaveDir.exists()) {
        fileSaveDir.mkdir();
    }

    for (Part part : request.getParts()) {
        String fileName = findFileName(part);
        part.write(savePath + File.separator + fileName);
    }   
}

private String findFileName(Part part) {
    String[] items = part.getHeader("content-disposition").split(";");
    for (String item : items) {
        if (item.trim().startsWith("filename")) {
            return item.substring(item.indexOf("=") + 2, item.length() - 1);
        }
    }
    return "";
}