jsp - 在多部分 enctype 表单中检索多个表单字段参数

标签 jsp tomcat file-upload

我有 2 个普通文本字段和 1 个要解析的上传字段。 Apache Tomcat FileUpload page 中建议的 getFieldName();似乎只得到 input html 标签的名称属性,而不是输入的参数。

getRelDate = fi.getFieldName(); 具有“日期”的结果。

此外,如果我对两个普通文本字段都使用 getFieldName(),它们的结果相同。

如何获取多个普通文本字段的参数?

Html代码:

<!-- normal text fields -->
<td>Release Date</td>
<td><input type='text' size=30 name='date'></td>

<td>Apple</td>
<td><input type='text' size=30 name='apple'></td>

<!-- upload field -->
<td>Image Upload</td>
<td><input type='file' size=30 name='imagefile'></td>

JSP代码:

String getRelDate   = "";
String getApple     = "";

  try{ 
     // Parse the request to get file items.
     List fileItems = upload.parseRequest(request);

     // Process the uploaded file items
     Iterator i = fileItems.iterator();

     while ( i.hasNext () ) 
     {
        FileItem fi = (FileItem)i.next();

    if ( fi.isFormField () ){
     getRelDate = fi.getFieldName();
     getApple   = fi.getFieldName();
    }

    // Get the uploaded file parameters

    File file2 = new File(filePath,fi.getName());

    fi.write(file2);

    out.println("Uploaded Filename: " + filePath + fi.getName() + "<br>");
    }
}

最佳答案

首先,您要遍历表单字段,并为每个字段设置两者 getRelDate getApple 到字段的名称。

其次,您正在设置字段名称,而不是字段

考虑 reading over the documentation for the libraries you try to use .

概括来说就是,如果是简单的表单域,使用getString()返回域内容。

如果是文件,上面提供的链接中有几个选项的详细信息。

关于jsp - 在多部分 enctype 表单中检索多个表单字段参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17241448/

相关文章:

javascript - PHP/HTML/JS : External file manager

jsp - 是否有必要遵守 webroot 中的 Java EE 目录约定?

java - Struts2 jquery 选项卡式面板超时不触发事件

eclipse - maven + eclipse + tomcat : class not found exception

php - 使用 php 上传最大 100MB 的大文件

angular - 使用 HttpClient 上传图片

java - 表单提交两次并使用 null 值并给出 500 错误

java - 如何拼写检查应用程序中的 JSP 文件?

java - 如何测试我的 Java 应用程序是否可以成功处理 Tomcat 服务器上的低内存/CPU 资源?

apache - 在 Windows 7 上安装 tomcat 和完整的 j2ee 套件