新建工程 upload<o:p></o:p>
<o:p> </o:p>添加 Struts 框架,使用 Struts1.2 版本<o:p></o:p>
<o:p></o:p>
新建 一个 jsp + action 这里将使用动态的 ActionForm<o:p></o:p>
<o:p> </o:p> 在新建表单对像时使用一个文件名和一个文件对像进行提交<o:p></o:p>
<o:p> </o:p>修改动态 From 的类型为 org.apache.struts.upload.FormFile<o:p></o:p>
<o:p> </o:p>
xml 代码
- <form-bean name="upfileForm" type="org.apache.struts.action.DynaActionForm">
-
- <form-property name="filename" type="java.lang.String" />
-
- <form-property name="filedata" type="java.lang.String" />
-
- form-bean>
改为 <o:p></o:p>
xml 代码
- <form-bean name="upfileForm" type="org.apache.struts.action.DynaActionForm">
-
- <form-property name="filename" type="java.lang.String" />
-
- <form-property name="filedata" type="org.apache.struts.upload.FormFile" />
-
- form-bean>
-
<o:p> </o:p>
修改 upfile.jsp 文件,在中加入 enctype="multipart/form-data" ,这样才可以提交二进制类型的文件<o:p></o:p>
<o:p> </o:p>
修改文件第一行代码<o:p></o:p>
<o:p>
xml 代码
- <%@ page language="java"%>
改为
- <%@ page contentType="text/html;charset=UTF-8" language="java"%>
修改 upfileAction.java 文件,修改后的内容如下:<o:p></o:p>
<o:p></o:p>
<o:p>
java 代码
<o:p></o:p>
将SetCharacterEncodingFilter.java复制到项目中,在 web.xml 文件中加入以下配置内容,过滤器的编码设置为 UTF-8<o:p></o:p>
<o:p></o:p>
xml 代码
- <filter>
-
- <filter-name>Set Character Encodingfilter-name>
-
- <filter-class>com.test.SetCharacterEncodingFilterfilter-class>
-
- <init-param>
-
- <param-name>encodingparam-name>
-
- <param-value>UTF-8param-value>
-
- init-param>
-
- filter>
-
- <filter-mapping>
-
- <filter-name>Set Character Encodingfilter-name>
-
- <url-pattern>/*url-pattern>
-
- filter-mapping>
-
- <filter-mapping>
-
- <filter-name>Set Character Encodingfilter-name>
-
- <servlet-name>actionservlet-name>
-
- filter-mapping>
配置 Tomcat 的 server.xml 文件,文件在 Tomcat_Home/conf 中<o:p></o:p>
<o:p> </o:p>
在端口配置的前面加入 URIEncoding="UTF-8" 如果使用了和IIS集成的话需要在 8009 的端口前也加入此配置内容。<o:p> </o:p>
现在启动服务器,测试。<o:p></o:p>
</o:p></o:p>
分享到:
相关推荐
Struts框架通过解析这个格式化的请求,可以获取到上传文件的信息。 1. **配置Struts2 Action**:在Struts2中,我们需要创建一个Action类来处理文件上传请求。这个类通常需要实现`ServletRequestAware`接口,以便...
以上代码中,我们获取了上传文件的临时路径,验证了文件大小和类型,然后将其保存到服务器的指定位置。注意,实际操作中还需要处理可能出现的异常,以及进行必要的安全检查。 总结一下,使用 Struts 实现文件上传...
文件上传功能允许用户从他们的设备上传文件到服务器。在Struts2中,这通常通过表单实现,表单包含一个`<input type="file">`元素,用户可以选择本地文件。Struts2的Action类会接收这个文件,并使用`Commons ...
`FileInfo`是自定义的类,包含`File`对象和`String`对象,分别表示上传文件的实际内容和文件名。 1. **配置Struts2的文件上传** 在`struts.xml`配置文件中,为需要支持文件上传的Action添加`params`和`fileUpload`...
struts上传文件(图片/附件),希望对初学struts的同学们有帮助。如果有事么不足,请大家多指教。
避免路径遍历攻击,确保文件存储在安全目录下,防止恶意文件的执行,以及检查上传文件的大小和类型,防止过大文件导致服务崩溃或恶意文件注入。 在本例中,提供的"updown"可能是一个包含示例代码、配置文件或测试...
3. 文件存储位置:确保上传文件存储在安全目录下,避免用户访问到其他敏感文件。 4. 下载安全:对于下载,应避免直接暴露文件路径,使用动态生成的文件名,防止恶意用户猜测其他文件地址。 四、优化策略 1. 断点...
默认情况下,这个拦截器可能会限制上传文件的类型为`.txt`,并且大小不超过10MB。这种限制是为了防止恶意用户上传大文件或者非文本文件,从而可能对服务器造成压力或引入安全风险。 配置文件`struts.xml`中关于文件...
2. 创建上传文件的JSP页面。 3. 编写Action类,使用Apache Commons FileUpload处理文件。 4. 验证和保存上传的文件。 5. 显示上传结果。 通过这种方式,你可以构建一个灵活且易于维护的文件上传系统。记住,文件...
Struts AJAX 文件上传是一种在Java Web开发中实现异步数据传输的技术,它结合了Struts框架和AJAX...在实际开发中,还可以结合其他技术和最佳实践,如使用第三方库如Struts2 jQuery Plugin,进一步简化文件上传的实现。
- `FormFile`: 用于封装上传文件的信息,包括文件名、类型、大小等。 ### 4. 配置文件 在Struts配置文件(struts-config.xml)中,你需要添加`multipart-config`元素到`<form-beans>`部分,指定文件上传的临时存储...
2. **上传组件**:Struts2使用Apache Commons FileUpload库来处理文件上传。这个库负责解析请求中的多部分数据,将文件内容分离出来。`commons-fileupload.jar` 是这个库的实现,它包含了处理文件上传的基本类和接口...
在"struts2.1.3上传文件"这个主题中,我们将深入探讨Struts2如何实现文件上传功能,以及与之相关的jsp(JavaServer Pages)技术。 文件上传是Web应用程序中常见的需求,例如用户可能需要上传照片、文档或其他类型的...
-- 设置上传文件的最大大小 --> <package name="default" extends="struts-default"> <result name="success">/success.jsp <result name="input">/upload.jsp ``` 在JSP页面中,创建一个HTML表单,使用`...
在Struts中,可以实现单文件和多文件的上传,并且为了提升用户体验,我们还可以添加进度条来显示文件上传的状态。本文将详细介绍如何在Struts中实现这两个功能,并带上传进度条。 首先,我们需要了解Struts中处理...
同时,我们还需要配置`struts.multipart.saveDir`属性,指定临时文件保存的位置,以及`struts.multipart.maxSize`,限制上传文件的最大大小。 在视图层,通常会有一个HTML表单,使用`enctype="multipart/form-data...
Struts2是一个流行的Java web开发框架,用于构建企业级应用...无论是使用List集合还是数组,核心原理都是相同的,只是接收上传文件的对象类型不同。了解并掌握这一特性,对于开发支持文件上传功能的web应用至关重要。