首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

OFBIZ的下传文件方法

2012-10-28 
OFBIZ的上传文件方法?普通方式:org.apache.commons.fileupload.disk.DiskFileItemFactory的jar包自己写的

OFBIZ的上传文件方法

?

普通方式:

org.apache.commons.fileupload.disk.DiskFileItemFactory的jar包自己写的方法。

那个方法里核心是调用了

DiskFileItemFactoryfactory = new DiskFileItemFactory();

ServletFileUploadupload = new ServletFileUpload(factory);

ListfileItems =? fileItems =upload.parseRequest(request);

?

示例代码:

public static String processFormData(HttpServletRequest request, Map formMap) {        String message = "";        DiskFileItemFactory factory = new DiskFileItemFactory();        ServletFileUpload upload = new ServletFileUpload(factory);        String value = PropertiesUtil.getConfigureMessage("image-upload-max-size");        int imageMaxSize = Integer.parseInt(value);        int formMaxSize = 30 * 1024 * 1024;        upload.setSizeMax(formMaxSize);        List fileItems = null;        try {            fileItems = upload.parseRequest(request);        } catch (FileUploadException ex) {            message = PropertiesUtil.getErrorMessage("utilhttp.upload.oversize");            return message;        }        Iterator it = fileItems.iterator();        FileItem fileItem = null;        String fieldName = null, fileName = null;        long imgSize = 0;        it = fileItems.iterator();        while (it.hasNext()) {            fileItem = (FileItem) it.next();            fieldName = fileItem.getFieldName();            if (fileItem.isFormField()) {                formMap.put(fieldName, fileItem.getString().trim());            } else {                fileName = fileItem.getName();                // no-select file                if (fileName.trim() == "") {                    continue;                }                imgSize = fileItem.getSize();                if (imgSize > 0) {                    if (fileName.lastIndexOf(File.separator) > 0) {                        fileName = fileName.substring(fileName.lastIndexOf(File.separator) + 1);                    }                    fileName = fileName.toLowerCase();                    if (!validateFileFormats(fileName)) {                        message = PropertiesUtil.getErrorMessage("utilhttp.upload.photo.type.unallowed");                        return message;                    } else if (imgSize > imageMaxSize) {                        message = "toolarge";                        return message;                    }                    formMap.put(fieldName, fileItem.get());                } else {                    // empty image                    message = "empty.image";                    return message;                }            }        }        return null;    }
?

?

?

?

?

?

还有另一种方法,ofbiz里有一个HttpRequestFileUpload的工具类。它的上传文件到服务器的方法是

HttpRequestFileUploaduploadObject = new HttpRequestFileUpload();

???uploadObject.setOverrideFilename(defaultFileName);

???uploadObject.setSavePath(imageServerPath + "/" + filePathPrefix);

???uploadObject.doUpload(request);

?

?

1 楼 wfine 2010-06-11   这两个类支出多线程和断点续传吗?不太了解,谢谢~~~

热点排行