实现文件上传的表单中必须要的属性如下:
而用于处理该表单的action代码如下:
其中的file与表单中的文件域的name熟悉必须一致,另外文件的两个隐藏属性FileName和ContentType的前缀必须和file的名字相同,即,如果文件名为xxx,则相应有xxxFileName和xxxContentType(其实名称的映射体现在get和set方法上,而不是变量的命名上,只是为了表达清楚起见,要求变量名上)。
ps:在文件上传过程中出现的中文编码问题在于,struts包中的default.properties文件中,定义的struts.i18n.encoding默认属性值为UTF-8,可以通过在struts.xml文件中定义constant属性来进行更改,如下所示: