Java 如何获取表单文本框和图像值表单类型enctype=";“多部分/表单数据”;在爪哇

Java 如何获取表单文本框和图像值表单类型enctype=";“多部分/表单数据”;在爪哇,java,forms,file-upload,multipartform-data,Java,Forms,File Upload,Multipartform Data,如何在servlet中获取表单值,同时将其加密为多部分/表单数据 <FORM name="filesForm" action="FileUpload" method="post" enctype="multipart/form-data"> <input type="text" name="firstname"> <input type="text" name="lastname"> <input type="file" name="filename"&

如何在servlet中获取表单值,同时将其加密为多部分/表单数据

<FORM name="filesForm" action="FileUpload" method="post" enctype="multipart/form-data">
<input type="text" name="firstname">
<input type="text" name="lastname">
<input type="file" name="filename">
</form>


如何在servlet firstname、lastname和文件值中获取这些值。

您可以使用apache commons fileupload:

通常,您的代码看起来像:

import org.apache.commons.fileupload.*;

DiskFileUpload upload=新的DiskFileUpload();
列表项=upload.parseRequest(请求);//请求是HttpServletRequest
//遍历表单字段
用于(文件项:项){
如果(item.isFormField()){//文本字段等。。。
字符串fieldName=item.getFieldName();
字符串值=item.getString();
}else{//文件字段
item.write(新文件(“some/path”);
}
}

我想这一问题也有重复的地方。让我找一些:)好的,这是:读一下,可能对你有帮助。还有一个:。HttpServletRequest.getPart()是您所需要的,它处理多部分请求。
DiskFileUpload upload = new DiskFileUpload();
List<FileItem> items = upload.parseRequest(request); // request is HttpServletRequest

// iterate through form fields
for(FileItem item:items) {
    if(item.isFormField()) { // text fields, etc...
        String fieldName = item.getFieldName();
        String value = item.getString();
    } else { // file fields
        item.write(new File("some/path"));
    }
}