當前位置: 首頁>>代碼示例>>Java>>正文


Java FileItem.getFieldName方法代碼示例

本文整理匯總了Java中org.apache.commons.fileupload.FileItem.getFieldName方法的典型用法代碼示例。如果您正苦於以下問題:Java FileItem.getFieldName方法的具體用法?Java FileItem.getFieldName怎麽用?Java FileItem.getFieldName使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在org.apache.commons.fileupload.FileItem的用法示例。


在下文中一共展示了FileItem.getFieldName方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: importProject

import org.apache.commons.fileupload.FileItem; //導入方法依賴的package包/類
public void importProject(HttpServletRequest req, HttpServletResponse resp) throws Exception {
	DiskFileItemFactory factory = new DiskFileItemFactory();
	ServletContext servletContext = req.getSession().getServletContext();
	File repository = (File) servletContext.getAttribute("javax.servlet.context.tempdir");
	factory.setRepository(repository);
	ServletFileUpload upload = new ServletFileUpload(factory);
	InputStream inputStream=null;
	boolean overwriteProject=true;
	List<FileItem> items = upload.parseRequest(req);
	if(items.size()==0){
		throw new ServletException("Upload file is invalid.");
	}
	for(FileItem item:items){
		String name=item.getFieldName();
		if(name.equals("overwriteProject")){
			String overwriteProjectStr=new String(item.get());
			overwriteProject=Boolean.valueOf(overwriteProjectStr);
		}else if(name.equals("file")){
			inputStream=item.getInputStream();
		}
	}
	repositoryService.importXml(inputStream,overwriteProject);
	IOUtils.closeQuietly(inputStream);
	resp.sendRedirect(req.getContextPath()+"/urule/frame");
}
 
開發者ID:youseries,項目名稱:urule,代碼行數:26,代碼來源:FrameServletHandler.java

示例2: importExcelTemplate

import org.apache.commons.fileupload.FileItem; //導入方法依賴的package包/類
public void importExcelTemplate(HttpServletRequest req, HttpServletResponse resp) throws Exception {
	DiskFileItemFactory factory=new DiskFileItemFactory();
	ServletFileUpload upload = new ServletFileUpload(factory);
	List<FileItem> items = upload.parseRequest(req);
	Iterator<FileItem> itr = items.iterator();
	List<Map<String,Object>> mapData=null;
	while (itr.hasNext()) {
		FileItem item = (FileItem) itr.next();
		String name=item.getFieldName();
		if(!name.equals("file")){
			continue;
		}
		InputStream stream=item.getInputStream();
		mapData=parseExcel(stream);
		httpSessionKnowledgeCache.put(req, IMPORT_EXCEL_DATA, mapData);
		stream.close();
		break;
	}
	httpSessionKnowledgeCache.put(req, IMPORT_EXCEL_DATA, mapData);
	writeObjectToJson(resp, mapData);
}
 
開發者ID:youseries,項目名稱:urule,代碼行數:22,代碼來源:PackageServletHandler.java

示例3: addFileParameter

import org.apache.commons.fileupload.FileItem; //導入方法依賴的package包/類
/**
 * <p> Adds a file parameter to the set of file parameters for this
 * request and also to the list of all parameters. </p>
 *
 * @param item The file item for the parameter to add.
 */
protected void addFileParameter(FileItem item) {
    FormFile formFile = new CommonsFormFile(item);

    String name = item.getFieldName();
    if (elementsFile.containsKey(name)) {
        Object o = elementsFile.get(name);
        if (o instanceof List) {
            ((List)o).add(formFile);
        } else {
            List list = new ArrayList();
            list.add((FormFile)o);
            list.add(formFile);
            elementsFile.put(name, list);
            elementsAll.put(name, list);
        }
    } else {
        elementsFile.put(name, formFile);
        elementsAll.put(name, formFile);
    }
}
 
開發者ID:SonarSource,項目名稱:sonar-scanner-maven,代碼行數:27,代碼來源:CommonsMultipartRequestHandler.java

示例4: processFormField

import org.apache.commons.fileupload.FileItem; //導入方法依賴的package包/類
/**
 * Process multipart request item as regular form field. The name and value
 * of each regular form field will be added to the given parameterMap.
 *
 * @param formField    The form field to be processed.
 * @param parameterMap The parameterMap to be used for the HttpServletRequest.
 */
private void processFormField(FileItem formField, Map<String, String[]> parameterMap) {
    String name = formField.getFieldName();
    String value = formField.getString();
    String[] values = parameterMap.get(name);

    if (values == null) {
        // Not in parameter map yet, so add as new value.
        parameterMap.put(name, new String[]{value});
    } else {
        // Multiple field values, so add new value to existing array.
        int length = values.length;
        String[] newValues = new String[length + 1];
        System.arraycopy(values, 0, newValues, 0, length);
        newValues[length] = value;
        parameterMap.put(name, newValues);
    }
}
 
開發者ID:helicalinsight,項目名稱:helicalinsight,代碼行數:25,代碼來源:MultipartFilter.java

示例5: uploadFiles

import org.apache.commons.fileupload.FileItem; //導入方法依賴的package包/類
/**
 * @see http://www.oschina.net/code/snippet_698737_13402
 * @param request
 * @return
 * @throws IOException
 */
public static Map<String, Object> uploadFiles(HttpServlet servlet, HttpServletRequest request) {
    Map<String, Object> map = JwUtils.newHashMap();
    Map<String, String> fileMap = JwUtils.newHashMap();
    map.put("file", fileMap);

    DiskFileItemFactory factory = new DiskFileItemFactory();// 創建工廠
    factory.setSizeThreshold(1024 * 1024 * 30);// 設置最大緩衝區為30M

    // 設置緩衝區目錄
    String savePath = servlet.getServletContext().getRealPath("/WEB-INF/temp");
    factory.setRepository(new File(savePath));

    FileUpload upload = new FileUpload(factory);// 獲得上傳解析器
    upload.setHeaderEncoding("UTF-8");// 解決上傳文件名亂碼
    
    try {
        String targetFolderPath = servlet.getServletContext().getRealPath("/WEB-INF/" + ConfigUtils.getProperty("web.files.upload.folder"));
        File targetFolder = new File(targetFolderPath);// 目標文件夾
        if(!targetFolder.exists()) {
            targetFolder.mkdir();
        }
        
        List<FileItem> fileItems = upload.parseRequest(new ServletRequestContext(request));// 解析請求體
        for (FileItem fileItem : fileItems) {
            if (fileItem.isFormField()) {// 判斷是普通表單項還是文件上傳項
                String name = fileItem.getFieldName();// 表單名
                String value = fileItem.getString("UTF-8");// 表單值
                map.put(name, value);
            } else {// 文件上傳項
                String fileName = fileItem.getName();// 獲取文件名
                if (StringUtils.isEmpty(fileName))// 判斷是否上傳了文件
                    continue;

                // 截取文件名
                int index = fileName.lastIndexOf("/");
                if (index > -1) {
                    fileName = fileName.substring(index);
                }

                // 檢查文件是否允許上傳
                index = fileName.lastIndexOf(".");
                if (index > -1 && index < fileName.length() - 1) {
                    String ext = fileName.substring(index + 1).toLowerCase();
                    if (!ConfigUtils.getString("web.files.upload.extension").contains(";" + ext + ";")) {
                        LOGGER.warn("The file {} is not allowed to upload.", fileName);
                        continue;
                    }
                }

                // 生成唯一文件名,保留原文件名
                String newFileName = UUID.randomUUID().toString();
                
                // 將文件內容寫到服務器端
                String targetPath = targetFolderPath + "/" + newFileName;
                File targetFile = new File(targetPath);// 目標文件
                targetFile.createNewFile();
                fileItem.write(targetFile);

                fileItem.delete();// 刪除臨時文件
                fileMap.put(fileName, newFileName);
            }
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    return map;
}
 
開發者ID:menyouping,項目名稱:jw,代碼行數:74,代碼來源:FileUtils.java

示例6: multipartHandler

import org.apache.commons.fileupload.FileItem; //導入方法依賴的package包/類
@Override
public Map<String, String[]> multipartHandler() throws Exception {
	multipart = new Multipart();
	DiskFileItemFactory disk = new DiskFileItemFactory();
	ServletFileUpload servletFileUpload = new ServletFileUpload(disk);
	List<FileItem> items = servletFileUpload.parseRequest(wrapper.httpRequest());

	Map<String, String[]> params = new HashMap<>();

	for (FileItem fileItem : items) {
		if (fileItem.isFormField()) {
			String fieldName = fileItem.getFieldName();
			String fieldVal = fileItem.getString("UTF-8");
			String[] param = params.get(fieldName);
			
			if (param != null) {
				String[] newArray = new String[param.length + 1];
				System.arraycopy(param, 0, newArray, 0, param.length);
				newArray[param.length] = fieldVal;
				param = newArray;
			} else {
				param = new String[]{fieldVal};
			}
			params.put(fieldName, param);
		} 
		else {
			multipart.addFiles(fileItem);
		}
	}
	return params;
}
 
開發者ID:NymphWeb,項目名稱:nymph,代碼行數:32,代碼來源:ResolverUrlImpl.java

示例7: HttpUploadReader

import org.apache.commons.fileupload.FileItem; //導入方法依賴的package包/類
HttpUploadReader(FileItem item) throws IOException {
    this.item = item;
    fieldName = item.getFieldName();
    fileName = item.getName();
    contentType = item.getContentType();
    size = item.getSize();
    inputStream = item.getInputStream();
}
 
開發者ID:heisedebaise,項目名稱:tephra,代碼行數:9,代碼來源:HttpUploadReader.java

示例8: initFields

import org.apache.commons.fileupload.FileItem; //導入方法依賴的package包/類
/**
  * 處理上傳內容
  *
  * @param request
  * @param maxSize
  * @return
  */
 // @SuppressWarnings("unchecked")
 private Map<String, Object> initFields(HttpServletRequest request) {

     // 存儲表單字段和非表單字段
     Map<String, Object> map = new HashMap<String, Object>();

     // 第一步:判斷request
     boolean isMultipart = ServletFileUpload.isMultipartContent(request);
     // 第二步:解析request
     if (isMultipart) {
         // Create a factory for disk-based file items
         DiskFileItemFactory factory = new DiskFileItemFactory();

         // 閥值,超過這個值才會寫到臨時目錄,否則在內存中
         factory.setSizeThreshold(1024 * 1024 * 10);
         factory.setRepository(new File(tempPath));

         // Create a new file upload handler
         ServletFileUpload upload = new ServletFileUpload(factory);

         upload.setHeaderEncoding("UTF-8");

         // 最大上傳限製
         upload.setSizeMax(maxSize);

/* FileItem */
         List<FileItem> items = null;
         // Parse the request
         try {
             items = upload.parseRequest(request);
         } catch (FileUploadException e) {
             // TODO Auto-generated catch block
             e.printStackTrace();
         }

         // 第3步:處理uploaded items
         if (items != null && items.size() > 0) {
             Iterator<FileItem> iter = items.iterator();
             // 文件域對象
             List<FileItem> list = new ArrayList<FileItem>();
             // 表單字段
             Map<String, String> fields = new HashMap<String, String>();
             while (iter.hasNext()) {
                 FileItem item = iter.next();
                 // 處理所有表單元素和文件域表單元素
                 if (item.isFormField()) { // 表單元素
                     String name = item.getFieldName();
                     String value = item.getString();
                     fields.put(name, value);
                 } else { // 文件域表單元素
                     list.add(item);
                 }
             }
             map.put(FORM_FIELDS, fields);
             map.put(FILE_FIELDS, list);
         }
     }
     return map;
 }
 
開發者ID:ansafari,項目名稱:melon,代碼行數:67,代碼來源:UploadUtils.java

示例9: performImport

import org.apache.commons.fileupload.FileItem; //導入方法依賴的package包/類
private String performImport(List<FileItem> files)  {
    //import certificate
    String status = "";
    InputStream filecontent = null;
    Integer id = null;

    try {
        for (FileItem item : files) {
            if (!item.isFormField()) {
                // Process form file field (input type="file").
                filecontent = item.getInputStream();
            } else {
                // Process regular form field (input type="text|radio|checkbox|etc", select, etc).
                String fieldname = item.getFieldName();
                String fieldvalue = item.getString();

                if (fieldname.equals("id")) {
                    id = Integer.parseInt(fieldvalue);
                }
            }
        }
        if (id != null && filecontent != null) {
            status = importCertificates(id, filecontent);
        }
    } catch (Exception ex) {
        LOGGER.info(ex);
    }

    return "/sharingcenter/security/import.jsp?id=" + id + "&" + status;
}
 
開發者ID:williamgrosset,項目名稱:OSCAR-ConCert,代碼行數:31,代碼來源:SecurityInfrastructureServlet.java

示例10: processTextField

import org.apache.commons.fileupload.FileItem; //導入方法依賴的package包/類
private void processTextField(FileItem item, DocFile docFile) {
  String name = item.getFieldName();
  String value = item.getString();    
  if ("rn".equals(name))
    docFile.setRn(Integer.parseInt(value));
  else if ("filename".equals(name))
    docFile.setFilename(value);
  else if ("uploader".equals(name))
    docFile.setUploader(value);
  else if ("contentType".equals(name))
    docFile.setContentType(value);
  
  
}
 
開發者ID:unsftn,項目名稱:bisis-v4,代碼行數:15,代碼來源:FileManagerServlet.java

示例11: doPost

import org.apache.commons.fileupload.FileItem; //導入方法依賴的package包/類
public void doPost(HttpServletRequest request, HttpServletResponse response)
        throws IOException, ServletException {
    try {
        List<FileItem> items = new ServletFileUpload(new DiskFileItemFactory()).parseRequest(request);
        String fileName = null;
        String filePath = null;
        String path = null;
        InputStream fileContent = null;
        for (FileItem item : items) {
            if (!item.isFormField()) {
                fileContent = item.getInputStream();
                fileName = FilenameUtils.getName(item.getName());
            }else if (item.isFormField() && item.getFieldName() != null
                    && item.getFieldName().equals("filePath")){
                path = item.getString();
            }
        }
        filePath = path + File.separator + fileName;
        OutputStream dest = new FileOutputStream(new
                File(filePath));
        int read = 0;
        byte[] bytes = new byte[1024];
        while ((read = fileContent.read(bytes)) != -1) {
            dest.write(bytes, 0, read);
        }
        fileContent.close();
        dest.close();

    } catch (FileUploadException e) {
        e.printStackTrace();
        throw new ServletException("Cannot parse multipart request.", e);
    }
    index(request, response);
}
 
開發者ID:fredcampos,項目名稱:shellbomb,代碼行數:35,代碼來源:UploadServlet.java

示例12: getParameterMapForMultipart

import org.apache.commons.fileupload.FileItem; //導入方法依賴的package包/類
/**
 * File Uploadがある場合のパラメータ解析を行います。
 * @param req HTTPリクエスト。
 * @return パラメータ解析結果。
 * @throws Exception 例外。
 */
private Map<String, Object> getParameterMapForMultipart(final HttpServletRequest req) throws Exception {
	Map<String, Object> map = new HashMap<String, Object>();
	DiskFileItemFactory factory = new DiskFileItemFactory();
	factory.setRepository(new File(tempDir)); //一時的に保存する際のディレクトリ
	ServletFileUpload upload = new ServletFileUpload(factory);
	upload.setHeaderEncoding(encoding);
	@SuppressWarnings("unchecked")
	List<FileItem> list = upload.parseRequest(req);
	for (FileItem item : list) {
		String key = item.getFieldName();
		if (key != null) {
			if (item.isFormField()) {
				String value = item.getString(encoding);
				this.addParamMap(map, key, value);
			} else {
				String filename = item.getName();
				if (StringUtil.isBlank(filename)) {
					map.put(key, null);
				} else {
					map.put(key, item);
				}
			}
		}
	}
	return map;
}
 
開發者ID:takayanagi2087,項目名稱:dataforms,代碼行數:33,代碼來源:DataFormsServlet.java

示例13: processRequest

import org.apache.commons.fileupload.FileItem; //導入方法依賴的package包/類
public Object processRequest(HttpServletRequest request) throws Exception {
	HttpServletRequestTwsWrapper twsRequest = request instanceof HttpServletRequestTwsWrapper ? (HttpServletRequestTwsWrapper) request : null;
	File temporaryFile = null;

	try {
		// Check multipart request
		if (ServletFileUpload.isMultipartContent(request)) {
			Engine.logContext.debug("(ServletRequester.initContext) Multipart resquest");

			// Create a factory for disk-based file items
			DiskFileItemFactory factory = new DiskFileItemFactory();

			// Set factory constraints
			factory.setSizeThreshold(1000);

			temporaryFile = File.createTempFile("c8o-multipart-files", ".tmp");
			int cptFile = 0;
			temporaryFile.delete();
			temporaryFile.mkdirs();
			factory.setRepository(temporaryFile);
			Engine.logContext.debug("(ServletRequester.initContext) Temporary folder for upload is : " + temporaryFile.getAbsolutePath());

			// Create a new file upload handler
			ServletFileUpload upload = new ServletFileUpload(factory);

			// Set overall request size constraint
			upload.setSizeMax(EnginePropertiesManager.getPropertyAsLong(PropertyName.FILE_UPLOAD_MAX_REQUEST_SIZE));
			upload.setFileSizeMax(EnginePropertiesManager.getPropertyAsLong(PropertyName.FILE_UPLOAD_MAX_FILE_SIZE));

			// Parse the request
			List<FileItem> items = GenericUtils.cast(upload.parseRequest(request));

			for (FileItem fileItem : items) {
				String parameterName = fileItem.getFieldName();
				String parameterValue;
				if (fileItem.isFormField()) {
					parameterValue = fileItem.getString();
					Engine.logContext.trace("(ServletRequester.initContext) Value for field '" + parameterName + "' : " + parameterValue);
				} else {
					String name = fileItem.getName().replaceFirst("^.*(?:\\\\|/)(.*?)$", "$1");
					if (name.length() > 0) {
						File wDir = new File(temporaryFile, "" + (++cptFile));
						wDir.mkdirs();
						File wFile = new File(wDir, name);
						fileItem.write(wFile);
						fileItem.delete();
						parameterValue = wFile.getAbsolutePath();
						Engine.logContext.debug("(ServletRequester.initContext) Temporary uploaded file for field '" + parameterName + "' : " + parameterValue);
					} else {
						Engine.logContext.debug("(ServletRequester.initContext) No temporary uploaded file for field '" + parameterName + "', empty name");
						parameterValue = "";
					}
				}

				if (twsRequest != null) {
					twsRequest.addParameter(parameterName, parameterValue);
				}
			}
		}
		
		Requester requester = getRequester();
		request.setAttribute("convertigo.requester", requester);

		Object result = requester.processRequest(request);

		processRequestEnd(request, requester);
		
		return result;
	} finally {
		if (temporaryFile != null) {
			try {
				Engine.logEngine.debug("(GenericServlet) Removing the temporary file : " + temporaryFile.getAbsolutePath());
				FileUtils.deleteDirectory(temporaryFile);
			} catch (IOException e) { }
		}
	}
}
 
開發者ID:convertigo,項目名稱:convertigo-engine,代碼行數:78,代碼來源:GenericServlet.java

示例14: addTextParameter

import org.apache.commons.fileupload.FileItem; //導入方法依賴的package包/類
/**
 * Adds a regular text parameter to the set of text parameters for this
 * request and also to the list of all parameters. Handles the case of
 * multiple values for the same parameter by using an array for the
 * parameter value.
 *
 * @param request The request in which the parameter was specified.
 * @param item    The file item for the parameter to add.
 */
protected void addTextParameter(HttpServletRequest request, FileItem item) {
    String name = item.getFieldName();
    String value = null;
    boolean haveValue = false;
    String encoding = request.getCharacterEncoding();

    if (encoding != null) {
        try {
            value = item.getString(encoding);
            haveValue = true;
        } catch (Exception e) {
            // Handled below, since haveValue is false.
        }
    }
    if (!haveValue) {
        try {
             value = item.getString("ISO-8859-1");
        } catch (java.io.UnsupportedEncodingException uee) {
             value = item.getString();
        }
        haveValue = true;
    }

    if (request instanceof MultipartRequestWrapper) {
        MultipartRequestWrapper wrapper = (MultipartRequestWrapper) request;
        wrapper.setParameter(name, value);
    }

    String[] oldArray = (String[]) elementsText.get(name);
    String[] newArray;

    if (oldArray != null) {
        newArray = new String[oldArray.length + 1];
        System.arraycopy(oldArray, 0, newArray, 0, oldArray.length);
        newArray[oldArray.length] = value;
    } else {
        newArray = new String[] { value };
    }

    elementsText.put(name, newArray);
    elementsAll.put(name, newArray);
}
 
開發者ID:lamsfoundation,項目名稱:lams,代碼行數:52,代碼來源:CommonsMultipartRequestHandler.java

示例15: execute

import org.apache.commons.fileupload.FileItem; //導入方法依賴的package包/類
@SuppressWarnings("unchecked")
   @Override
   public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request,
    HttpServletResponse response) throws Exception {
// cumberstone way of extracting POSTed form with a file
DiskFileUpload formParser = new DiskFileUpload();
formParser.setRepositoryPath(Configuration.get(ConfigurationKeys.LAMS_TEMP_DIR));
List<FileItem> formFields = formParser.parseRequest(request);

String returnURL = null;
String limitTypeParam = null;
InputStream uploadedFileStream = null;
String packageName = null;
for (FileItem formField : formFields) {
    String fieldName = formField.getFieldName();
    if ("returnURL".equals(fieldName)) {
	// this can be empty; if so, another method of delivering results is used
	returnURL = formField.getString();
    } else if ("limitType".equals(fieldName)) {
	limitTypeParam = formField.getString();
    } else if ("file".equals(fieldName) && !StringUtils.isBlank(formField.getName())) {
	packageName = formField.getName().toLowerCase();
	uploadedFileStream = formField.getInputStream();
    }
}

// this parameter is not really used at the moment
request.setAttribute("returnURL", returnURL);

// show only chosen types of questions
request.setAttribute("limitType", limitTypeParam);

// user did not choose a file
if ((uploadedFileStream == null) || !(packageName.endsWith(".zip") || packageName.endsWith(".xml"))) {
    ActionMessages errors = new ActionMessages();
    errors.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage("label.questions.file.missing"));
    request.setAttribute(Globals.ERROR_KEY, errors);
    return mapping.findForward("questionFile");
}

Set<String> limitType = null;
if (!StringUtils.isBlank(limitTypeParam)) {
    limitType = new TreeSet<String>();
    // comma delimited acceptable question types, for example "mc,fb"
    Collections.addAll(limitType, limitTypeParam.split(","));
}

Question[] questions = packageName.endsWith(".xml")
	? QuestionParser.parseQTIFile(uploadedFileStream, null, limitType)
	: QuestionParser.parseQTIPackage(uploadedFileStream, limitType);
request.setAttribute("questions", questions);

return mapping.findForward("questionChoice");
   }
 
開發者ID:lamsfoundation,項目名稱:lams,代碼行數:55,代碼來源:QuestionsAction.java


注:本文中的org.apache.commons.fileupload.FileItem.getFieldName方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。