如何将多部分数据和文本数据从HTML表单发送到JSP页面
我的表单字段是名称,上传文件
我无法一次发送两个
答案 0 :(得分:0)
在multipart/form-data
请求中,text参数也作为多部分项发送,而不是作为常规查询参数发送。要获取text参数,您需要使用与用于获取上传文件的相同 API。假设您正在使用Apache Commons FileUpload,这是事实上的标准multipart/form-data
解析器,那么您需要挂钩该项是普通表单字段的条件。
List<FileItem> items = new ServletFileUpload(new DiskFileItemFactory()).parseRequest(request);
for (FileItem item : items) {
if (item.isFormField()) {
// Process regular form field (input type="text|radio|checkbox|etc", select, etc).
String fieldname = item.getFieldName();
String fieldvalue = item.getString();
// ... (do your job here)
} else {
// Process form file field (input type="file").
String fieldname = item.getFieldName();
String filename = FilenameUtils.getName(item.getName());
InputStream filecontent = item.getInputStream();
// ... (do your job here)
}
}