开发环境JDK1.8 eclipse struts2-2.3.31

1.创建web项目
2.导入struts2核心jar包
3.更改web.xml配置文件(只要配置好struts2的Filter就好)
4.创建src/struts.xml文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<!-- 该属性指定需要Struts2处理的请求后缀,该属性的默认值是action,即所有匹配*.action的请求都由Struts2处理。
如果用户需要指定多个请求后缀,则多个后缀之间以英文逗号(,)隔开。 -->
<constant name="struts.action.extension" value="do" />
<!-- 设置浏览器是否缓存静态内容,默认值为true(生产环境下使用),开发阶段最好关闭 -->
<constant name="struts.serve.static.browserCache" value="false" />
<!-- 当struts的配置文件修改后,系统是否自动重新加载该文件,默认值为false(生产环境下使用),开发阶段最好打开 -->
<constant name="struts.configuration.xml.reload" value="true" />
<!-- 开发模式下使用,这样可以打印出更详细的错误信息 -->
<constant name="struts.devMode" value="true" />
<!-- 默认的视图主题 -->
<constant name="struts.ui.theme" value="simple" />
<!--<constant name="struts.objectFactory" value="spring" />-->
<!--解决乱码 -->
<constant name="struts.i18n.encoding" value="UTF-8" />
<!-- 指定允许上传的文件最大字节数。默认值是2097152(2M) -->
<constant name="struts.multipart.maxSize" value="10701096"/>
<!-- 设置上传文件的临时文件夹,默认使用javax.servlet.context.tempdir -->
<constant name="struts.multipart.saveDir " value="d:/tmp" />
<package name="upload" extends="struts-default">
<action name="fileUpload" class="com.ifan.action.FileUpload">
<!-- 动态设置savePath的属性值 -->
<param name="savePath">WEB-INF/images</param>
<result name="success">/success.jsp</result>
<result name="input">/error.jsp</result>
<interceptor-ref name="fileUpload">
<!-- 文件过滤 -->
<param name="allowedTypes">image/bmp,image/png,image/gif,image/jpeg</param>
<!-- 文件大小, 以字节为单位 -->
<param name="maximumSize">1025956</param>
</interceptor-ref>
<!-- 默认拦截器必须放在fileUpload之后,否则无效 -->
<interceptor-ref name="defaultStack" />
</action>
</package>
</struts>
5.创建src/com.ifan.action.FileUpload.Java
package com.ifan.action;
import java.io.File;
import org.apache.commons.io.FileUtils;
import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
public class FileUpload extends ActionSupport{
private File[] image; //上传的文件
private String[] imageFileName; //文件名称
private String[] imageContentType; //文件类型
public String execute() throws Exception {
ServletActionContext.getRequest().setCharacterEncoding("UTF-8");
String realpath = ServletActionContext.getServletContext().getRealPath("/images");
System.out.println(realpath);
if (image != null) {
File savedir=new File(realpath);
if(!savedir.getParentFile().exists())
savedir.getParentFile().mkdirs();
for(int i=0;i<image.length;i++){
File savefile = new File(savedir, imageFileName[i]);
FileUtils.copyFile(image[i], savefile);
}
ActionContext.getContext().put("message", "文件上传成功");
}
return "success";
}
public File[] getImage() {
return image;
}
public void setImage(File[] image) {
this.image = image;
}
public String[] getImageContentType() {
return imageContentType;
}
public void setImageContentType(String[] imageContentType) {
this.imageContentType = imageContentType;
}
public String[] getImageFileName() {
return imageFileName;
}
public void setImageFileName(String[] imageFileName) {
this.imageFileName = imageFileName;
}
}
6.创建WebContent/index.jsp ,作为上传文件的页面
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>" rel="external nofollow" >
<title>My JSP 'hello.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css" rel="external nofollow" >
-->
</head>
<body>
<!-- Struts2的文件上传标签 -->
<s:form action="fileUpload" namespace="/" method="POST" enctype="multipart/form-data">
<!-- 该name需要和后台的File类型的名字对应起来,否则将得不到该文件 size 上传文件的大小 -->
<s:file name="image" label="Select a File to upload" size="40" />
<s:file name="image" label="Select a File to upload" size="40" />
<s:submit value="submit" name="submit" />
</s:form>
</body>
</html>
7.创建WebContent/success.jsp 作为文件上传成功跳转的页面,创建WebContent/error.jsp 作为文件上传失败的页面 , 创建WebContent/images文件夹,作为上传文件的存储位置
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# struts2多文件上传
# struts2
# 文件上传
# struts实现文件上传
# JS+Struts2多文件上传实例详解
# struts2实现多文件上传
# java中struts2实现文件上传下载功能实例解析
# struts2单个文件上传的两种实现方式
# 关于Struts2文件上传与自定义拦截器
# Struts2+jquery.form.js实现图片与文件上传的方法
# JavaWeb中struts2实现文件上传下载功能实例解析
# JavaEE中struts2实现文件上传下载功能实例解析
# java中struts2实现简单的文件上传与下载
# Struts2+uploadify多文件上传实例
# 上传文件
# 多个
# 该文件
# 配置文件
# 值为
# 默认值
# 上传
# 放在
# 就好
# 英文
# 跳转
# 错误信息
# 都由
# 大家多多
# 则将
# 出更
# 加载
# 临时文件夹
# 拦截器
相关文章:
装修招标网站设计制作流程,装修招标流程?
如何用狗爹虚拟主机快速搭建网站?
岳西云建站教程与模板下载_一站式快速建站系统操作指南
建站主机选购指南:核心配置优化与品牌推荐方案
如何快速生成ASP一键建站模板并优化安全性?
如何在IIS管理器中快速创建并配置网站?
怎么将XML数据可视化 D3.js加载XML
如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?
如何在云虚拟主机上快速搭建个人网站?
如何在Windows服务器上快速搭建网站?
python的本地网站制作,如何创建本地站点?
韩国服务器如何优化跨境访问实现高效连接?
专业网站制作服务公司,有哪些网站可以免费发布招聘信息?
建站主机与虚拟主机有何区别?如何选择最优方案?
如何通过老薛主机一键快速建站?
宝塔建站助手安装配置与建站模板使用全流程解析
网站制作免费,什么网站能看正片电影?
建站之星在线版空间:自助建站+智能模板一键生成方案
如何规划企业建站流程的关键步骤?
如何将凡科建站内容保存为本地文件?
建站之星后台密码如何安全设置与找回?
清除minerd进程的简单方法
武汉网站如何制作,黄黄高铁武穴北站途经哪些村庄?
如何在Windows环境下新建FTP站点并设置权限?
深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?
高性价比服务器租赁——企业级配置与24小时运维服务
如何在Golang中实现微服务服务拆分_Golang微服务拆分与接口管理方法
如何在IIS7中新建站点?详细步骤解析
php条件判断怎么写_ifelse和switchcase的使用区别【对比】
,南京靠谱的征婚网站?
大连网站设计制作招聘信息,大连投诉网站有哪些?
广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?
C#怎么创建控制台应用 C# Console App项目创建方法
如何构建满足综合性能需求的优质建站方案?
建站主机助手选型指南:2025年热门推荐与高效部署技巧
在线ppt制作网站有哪些,请推荐几个好的课件下载的网站?
如何在阿里云ECS服务器部署织梦CMS网站?
如何在Golang中指定模块版本_使用go.mod控制版本号
如何生成腾讯云建站专用兑换码?
如何快速查询网址的建站时间与历史轨迹?
javascript基本数据类型及类型检测常用方法小结
阿里云网站搭建费用解析:服务器价格与建站成本优化指南
北京专业网站制作设计师招聘,北京白云观官方网站?
北京的网站制作公司有哪些,哪个视频网站最好?
如何在企业微信快速生成手机电脑官网?
,sp开头的版面叫什么?
如何在IIS中新建站点并配置端口与物理路径?
如何在搬瓦工VPS快速搭建网站?
网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?
定制建站平台哪家好?企业官网搭建与快速建站方案推荐
*请认真填写需求信息,我们会在24小时内与您取得联系。