struts2下传文件往底上看一点

struts2上传文件往底下看一点
平时都是直接在action中按照struts2定义的格式来接流,最近看到华为技术人员调用struts2底层方法对文件流做了封装,感觉有用赶紧记了下来
public void preExecute()
    {
        if (httpServletRequest instanceof MultiPartRequestWrapper)
        {
            MultiPartRequestWrapper requestWrapper = (MultiPartRequestWrapper) httpServletRequest;
            Enumeration<String> parameterNames = requestWrapper.getFileParameterNames();
            while (parameterNames.hasMoreElements())
            {
                @SuppressWarnings("unused")
                String paramterName = parameterNames.nextElement();
                File[] files = requestWrapper.getFiles(paramterName);
                if (null == files || files.length == 0)
                {
                    continue;
                }
                else if (files.length == 1)
                {
                    FileBean fileBean = new FileBean();
                    fileBean.setAbsolutePath(files[0].getAbsolutePath());
                    fileBean.setFileSize(files[0].length());
                    fileBean.setFilename(requestWrapper.getFileNames(paramterName)[0]);
                    this.fileMap.put(paramterName, fileBean);
                }
                else
                {
                    ArrayList<FileBean> list = new ArrayList();
                    for (int i = 0; i < files.length; i++)
                    {
                        File file = files[i];
                        FileBean fileBean = new FileBean();
                        fileBean.setAbsolutePath(file.getAbsolutePath());
                        fileBean.setFileSize(file.length());
                        fileBean.setFilename(requestWrapper.getFileNames(paramterName)[i]);
                        list.add(fileBean);
                    }
                    this.fileMap.put(paramterName, list);
                }
            }
        }
    }