2010-07-13 47 views
0

我有一個需求,在該需求中,我需要處理少量數據以生成Id字段,同時我需要上傳幾個需要在按下時完成的圖像。我的意思是說,數據和圖像必須同時處理(圖像上傳到文件服務器和數據保存在數據庫中)。我使用Apache公共上傳文件,並在我有將表單類型設置爲multipart。問題是我有幾個參數設置在請求本身中,當在servlet中提取時返回null。請提供一些指針,以瞭解如何在servlet中請求中提取這些參數集。請幫助我..當表單類型爲多部分時,提取httprequest的參數

+0

我需要的數據和圖像在同一時間 – Sam 2010-07-13 14:23:25

+0

上傳請張貼一些代碼 – 2010-07-13 14:28:28

+0

我不能夠提取在請求中設置的參數,如 字符串名稱=的request.getParameter(「名稱」);例如返回null – Sam 2010-07-13 14:34:26

回答

0

像這樣的東西可以幫助您提取內容:

DiskFileItemFactory factory = new DiskFileItemFactory(); 
ServletFileUpload fileUpload = new ServletFileUpload(factory); 
List<FileItem> fileUploadItems = fileUpload.parseRequest((HttpServletRequest) request); 
for (FileItem fileItem : fileUploadItems) { 
    String fieldName = fileItem.getFieldName(); 
    String contentType = fileItem.getContentType(); 
    long size = fileItem.getSize(); 
    if (size < 1) { 
     throw new FileUploadException("The submitted file must not be null!"); 
    } 
    boolean equalFieldName = fieldName.equals(SOME_FIELD_NAME); 
    if (!equalFieldName) { 
     // do something 
    } 
    boolean equalContentType = contentType.equals(SOME_CONTENT); 
    if (!equalContentType) { 
     // do something 
    } 
    if (equalFieldName && equalContentType) { 
     stream = fileItem.getInputStream(); 
     break; 
    } 

}