Struts2使用開源項目Apache Jakarta Commons FileUpload和內建的FileUploadInterceptor攔截器實現文件上傳,所需的jar包如下:
commons-logging-1.1.jar
freemarker-2.3.8.jar
ognl-2.6.11.jar
struts2-core-2.0.6.jar
xwork-2.0.1.jar
commons-io-1.3.1.jar
commons-fileupload-1.2.jar
★ 文件上傳頁面 fileupload.jsp
這里需要注意的是,form的enctype屬性必須設置為multipart/form-data。
★ 處理文件上傳 FileUploadAction.java
在fileupload.jsp中,只有doc一個字段,而FileUploadAction.java中,卻有三個字段,Struts2怎么通過頁面的一個字段設置Action里的三個字段呢?沒錯,這就是FileUploadInterceptor的功勞了!你所要做的只是按照一定的樣式命名這三個字段的set方法,而字段名可以任意命名。第一個File類型的字段的set方法還是以常規的方式命名,另兩個String類型的字段的set方法必須分別以“File字段的set方法名+FileName”和“File字段的set方法名+ContentType”來命名。
★ 配置文件 struts.xml
★ 配置文件 web.xml
開心過好每一天。。。。。