普通方式:
org.apache.commons.fileupload.disk.DiskFileItemFactory的jar包自己写的方法。
那个方法里核心是调用了
DiskFileItemFactory
factory = new DiskFileItemFactory();
ServletFileUpload
upload = new ServletFileUpload(factory);
List
fileItems =
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的工具类。它的上传文件到服务器的方法是
HttpRequestFileUpload
uploadObject = new HttpRequestFileUpload();
uploadObject.setOverrideFilename(defaultFileName);
uploadObject.setSavePath(imageServerPath + "/" + filePathPrefix);
uploadObject.doUpload(request);
分享到:
相关推荐
1. **位置**: OFBiz 的主题文件通常存储在 `themes` 文件夹内。 - 示例路径:`/ofbiz/framework/webapp/themes` - 内含多个子文件夹,每个子文件夹代表一个不同的主题,例如 `bizznesstime`。 2. **结构**: - *...
控制器依据XML配置文件映射请求到对应的处理器,处理器执行模型操作,然后控制器根据处理结果更新视图并返回给用户。过滤器(Filter)在OFBIZ中扮演重要角色,它在请求到达Servlet之前进行预处理,可以用来实现安全...
本主题文件定制教程主要聚焦于如何在OFBiz框架下,对"Hello"主题进行深入的个性化配置,从而提供更符合企业需求的后台管理体验。 "Hello"主题是OFBiz预设的主题之一,设计简洁明了,适合初学者快速上手。在本教程中...
你只需要下载这个文件包中的配置文件模板,虽后放到ofbiz1004\framework\appserver\templates\tomcat6下替换原来的文件,然后再到ofbiz目录下运行java -jar ofbiz.jar -setup tomcat6 ,完成后会得到一个setup的文件...
登录级别的权限控制定义在每个组件的`ofbiz-component.xml`文件中,用于限定用户访问该组件所需的最低权限。例如,可以通过设置`base-permission`属性来指定用户至少需要具备哪些权限才能访问该组件。例如,一个组件...
2. 我们需要修改 Ofbiz 的配置文件(entityengine.xml),以便与 MySQL 数据库集成。 3. 我们需要在 MySQL 中创建用户和库:ofbiz、ofbizolap、ofbiztenant。 本文详细介绍了 Ofbiz 的安装与配置过程,包括环境搭建...
根据给定的文件信息,以下是关于Apache OFBiz开发的知识点: 1. OFBiz介绍与安装:OFBiz是一个开源的企业自动化软件套件,它提供了构建企业应用程序所需的各种功能,比如电子商务、订单处理等。文件中提到了2008年...
OFBiz API 是OFBiz框架的核心组成部分,它提供了丰富的接口和方法,使得开发者能够轻松地与OFBiz的各个业务组件进行交互。API的设计遵循了面向服务架构(SOA),支持RESTful风格的Web服务,同时也提供传统的Java ...
然后,你需要了解Ofbiz的配置文件,如entityengine.xml、services.xml和component.xml,它们分别定义了实体模型、服务和组件的配置。 在深入学习过程中,实践是关键。通过创建和修改简单的服务和实体,你可以逐步...
这些模型文件通常为XML格式,比如`entityengine.xml`,它们定义了数据库表的字段、类型、约束等,并且可以通过Ofbiz的数据导入导出工具进行数据迁移和备份。开发者可以根据需要修改这些模型,以适应特定的业务需求或...
2. 在"hot-deploy/practice"目录下,创建一个名为"ofbiz-component.xml"的组件配置文件。这个文件包含了组件的元数据,告诉Ofbiz如何加载和管理你的组件。文件内容如下: ```xml <ofbiz-component name="practice" ...
7. **社区资源**:OfBiz拥有活跃的社区,用户可以在论坛、邮件列表和GitHub上找到解决问题的方法,以及与其他OfBiz使用者交流的经验分享。 通过深入探索OFBIZ_Demo,无论是初学者还是经验丰富的开发者,都可以...
3. "OFBiz其它资源.txt":这个文件可能包含了一些额外的链接、提示或说明,可能是对OFBiz开发、部署或使用的补充资料。 综上所述,这个压缩包提供了OFBiz 10.04版本的数据库设计核心信息,对于想要深入了解或开发...
这样,JVM读取的任何文件,包括Ofbiz的配置文件,都将按照UTF-8进行解码。 通过以上三个步骤,Ofbiz在运行过程中与MySQL数据库的交互应该可以正确处理中文字符,避免出现乱码现象。然而,还需要注意其他可能的乱码...
4. 部署Ofbiz:将生成的WAR文件部署到你的Web服务器上,例如将`ofbiz.war`复制到Tomcat的webapps目录下,然后启动服务器。 5. 运行Ofbiz:在浏览器中输入`http://localhost:8080/ofbiz`,如果一切顺利,你应该能...
- **关闭 OFBiz**:提供正确的关闭方法,避免数据丢失。 - **首次浏览 OFBiz**: - **访问 OFBiz**:介绍如何通过 Web 浏览器访问 OFBiz。 - **探索 Web 应用“ecommerce”**:详细介绍电子商务模块的主要功能。 ...
- **OFBiz工作区简介**:介绍OFBiz项目的结构及基本文件组织方式。 - **安装Java开发工具包(JDK)**: - **下载JDK 5.0**:提供官方下载链接。 - **安装JDK 5.0**:给出安装过程中的注意事项及常见问题解决方案...
OFBiz的目录结构分为多个部分,包括`.classpath`、`.project`等用于IDE集成的文件,以及`ant`、`build.xml`等构建相关的文件。最重要的是`applications`和`framework`目录: 1. **applications**:包含了OFBiz的...