2014-04-07 95 views
0

我有一個Html表格與enctype="multipart/form-data"。我有一個dto類,它擁有所有的setter和getter。自從我提交形式multipartgetParameter()方法是行不通的,所以在servlet我用列表如下,文件上傳與其他字段

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) 
    //getters and setters 

} else { 
    // Process form file field (input type="file"). 
    String fieldname = item.getFieldName(); 
    String filename = FilenameUtils.getName(item.getName()); 
    InputStream filecontent = item.getInputStream(); 
    // ... File uploading code 
} 
} 

這裏我的問題是我怎麼能叫getter和setter在for循環。我認爲在這裏它應該是通過for循環應用於所有參數的單一聲明。任何人都可以幫助我。

+0

是什麼類型的DTO類是你能夠施展它的FileItem – vikeng21

+0

@ vikeng21我不KNW有關,但它是一個java文件具有字符串類型的變量,並且所有getter和setter都在那裏。 – Raghavendra

+0

@ vikeng21請幫我在這 – Raghavendra

回答

1

您可以使用這樣一個庫作爲Apache Commons BeanUtils,例如:

if (item.isFormField()) { 
    // Process regular form field (input type="text|radio|checkbox|etc", select, etc). 
    String fieldname = item.getFieldName(); 
    String fieldvalue = item.getString(); 

    BeanUtils.setProperty(dto, fieldname, fieldvalue); 
} 
+0

k。 。 。什麼是dto這裏。 。 – Raghavendra

+0

是我的dto課程的對象。 。 。 – Raghavendra

+0

是的,你想調用它的setters和getters –

相關問題