0

我创建了一个表单来将图像上传到 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");

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

4

1 回答 1

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 "";
}
于 2013-10-19T17:27:15.027 回答