应用引擎 (Java) 文件上传

2022-09-04 04:04:20

我设法使用以下示例在App-Engine上上传文件:

如何使用谷歌应用引擎(java)上传和存储图像

如何在应用程序引擎java中上传图片

问题是,我正在提交其他字段以及下面列出的文件字段:

<form action="index.jsp" method="post" enctype="multipart/form-data">
    <input name="name" type="text" value=""> <br/>
    <input name="imageField" type="file" size="30"> <br/>
    <input name="Submit" type="submit" value="Sumbit">
</form>

在我的 servlet 中,我在查询时得到空值

name = request.getParameter("name");

为什么会这样?有没有办法检索文本字段值?


答案 1

您必须通过 FileItemIterator。在您提到的示例中,仅处理图像 ()。FileItemStream imageItm = iter.next();

// From the example: http://stackoverflow.com/questions/1513603/how-to-upload-and-store-an-image-with-google-app-engine-java
FileItemIterator iter = upload.getItemIterator(req);
// Parse the request
while (iter.hasNext()) {
    FileItemStream item = iter.next();
    String name = item.getFieldName();
    InputStream stream = item.openStream();
    if (item.isFormField()) {
        System.out.println("Form field " + name + " with value "
            + Streams.asString(stream) + " detected.");
    } else {
        // Image here.
        System.out.println("File field " + name + " with file name "
            + item.getName() + " detected.");
        // Process the input stream
        ...
    }
}

有关更多详细信息,请参阅 http://www.jguru.com/faq/view.jsp?EID=1045507


答案 2