[struts]文件上传

Struts2框架之文件上传 在之前博客 Java Web 通过JSP上传文件实例,使用了html中内置的file标签<input type="file" name="file" value="浏览文件">进行文件上传。在Struts的内置标签库中,同样也提供了file标签,用户文件上传,称为文件选择域。使用Struts标签库中的file标签,在后端框架会自动进行文件接收,底层细节不用我们关注,这也正是框架的主要作... 阅读详情

//test_upload.jsp

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html:html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
        <html:form action="upload.do" enctype="multipart/form-data">
            please select you file to upload:
            <html:file property="file"/>
            <html:submit property="submit">
                </html:submit>
            </html:form>
    </head>
    <body>
     
    </body>
</html:html>

 

//struts-config.xml

  <form-bean name="bookForm" type="org.apache.struts.action.DynaActionForm">
         <form-property name="file" type="org.apache.struts.upload.FormFile"/>
     </form-bean>
    </form-beans>
   
    <global-exceptions>
   
    </global-exceptions>

    <global-forwards>
        <forward name="welcome"  path="/Welcome.do"/>
    </global-forwards>

    <action-mappings>
        <action path="/Welcome" forward="/welcomeStruts.jsp"/>
        <action path="/test1" type="cn.java.TestCheckboxAction" name="registForm" scope="request">
        </action>
        <action path="/upload" type="cn.java.TestUploadAction" name="bookForm" scope="request" validate="false">
            </action>
    </action-mappings>
   

 

 

//action类

public class TestUploadAction extends Action{
      public ActionForward execute(ActionMapping mapping,ActionForm form,HttpServletRequest request,
          HttpServletResponse response){
        
          DynaActionForm dyform=(DynaActionForm)form;
          FormFile theFile=(FormFile)dyform.get("file");
          if(!theFile.getFileName().equals("")){
          try{
           InputStream stream=theFile.getInputStream();
           String filePath="c://";
           OutputStream bos=new FileOutputStream(filePath+theFile.getFileName());
           int bytesRead=0;
           byte[] buffer=new byte[8192];
           while((bytesRead=stream.read(buffer,0, 8192))!=-1){
               bos.write(buffer, 0, bytesRead);
           }
           bos.close();
           stream.close();
          }catch(Exception e){
          e.printStackTrace();
          }
          }
          return null;
      }

}

Struts文件上传详解与实践 Struts是一个开源的MVC(Model-View-Controller)框架,它为创建Java Web应用程序提供了一种有效的方式。Struts框架的主要目的是促进应用程序的模块化设计,从而简化开发和维护工作。Struts框架已经成为Java EE应用程序开发的重要组成部分,被广泛应用于Web层的开发。Apache Commons FileUpload 是一个强大的文件上传组件,可以用于Java应用程序中,如基于Struts的Web应用程序。 阅读详情

相关推荐

Java文件上传实现与Struts框架应用

在Java Web开发的世界里,Struts框架无疑占据了重要的位置。本章将带您初识Struts框架,了解其核心功能和架构思想。Struts是一个开源的MVC(Model-View-Controller)框架,它将Web层的业务逻辑与展示层代码分离,让开发者可以专注于应用逻辑的编写,同时提供了一个丰富的标签库和易于扩展的插件体系。Struts 1.x系列诞生于2001年,为早期的Java EE开发提供了极大的便利。

weixin_42509888的博客 996

Struts2的文件上传

Struts也提供了内置标签用于文件上传<s:file>,我们称为文件选择域 与html的标签<input tyle=”file”>是一样用的 文件上传的必要前提条件 Action接收到的File对象是一个临时文件,后面需要保存到另外一个路径去 表单必须是post方法 enctype类型必须为mul...

caiji 264

A Super-Resolution Imaging Method for Forward-Looking Scanning Radar Based on Improved TV论文阅读

具体而言,作者提出了一种改进的总变差(Improved Total Variation, ITV)方法,通过引入。论文旨在解决前视扫描雷达(Forward-Looking Scanning Radar)超分辨率成像中传统。(Batch Processing),以增强图像边缘特征的保留能力,并提升计算效率。论文的核心创新点在于对传统TV正则化的邻域梯度计算进行扩展,提出。ITV剖面(图3d)在噪声下仍保持矩形边缘,仅存。​(公式10):实现稀疏约束。),抑制远端单元贡献。(幅度远低于目标)。

yangqoor的博客 1239

struts2文件上传

一、文件上传页面四个要求: (1)变短必须是post提交 (2)提交类型必须是enctype="multipart/form-data",必须多段式 (3)文件使用文件上传控件<input type="file“ name="f"/> (4)name必填,不然不会上传 二、使用struts2接受文件 1、后台接受文件: 在action中写一个File对象的属性,属性名和前...

玉爷的博客 875

闲鱼客户端三重动态签名机制解析:x-sign、x-mini-wua与x-umt

在移动客户端安全通信中,设备级动态签名已成为主流App防范自动化攻击的核心手段。其原理是将设备指纹、运行时行为与可信硬件标识深度融合,生成不可复用、不可跨端、不可静态伪造的请求凭证。这类机制超越传统Token或Session鉴权,具备强上下文绑定性与实时熵值校验能力,广泛应用于电商、社交及开放平台等高风险接口场景。技术价值体现在有效识别模拟器、无头浏览器与集群化爬虫,同时保障多端一致性与合规数据对接。本文聚焦闲鱼客户端实际落地的x-sign(带设备上下文的混合签名)、x-mini-wua(小程序行为水印)与

weixin_35732273的博客 495

CEH Practical 实战考试真题与答案

CEH Practical 是 EC-Council 推出的Certified Ethical Hacker(CEH)认证项目中的一项高级动手实践考试。它不同于传统的理论考试,侧重于在真实环境中检验考生的实操能力。

sgafdgdagd的博客 967

struts1中的文件上传

在struts1和2中,分别对 commons-fileupload组件进行了包装,使文件上传操作更方便。 本文讲解如何使用struts1上传文件。 步骤: 1 编写jsp页面 2 给jsp中的form表单配置一个ActionForm 3 编写Action,处理文件上传功能 4 配置struts-config.xml文件 5 测试

zhanggnol的blog 2794

浅谈Struts2文件上传

  目录 一、struts2文件上传大前提 二、Action实现 三、struts.xml配置【包含拦截器实现文件格式与文件大小的过滤】 常用struts2 配置上传文件格式  一、struts2文件上传大前提 必须将&lt;form&gt;表单中的method设置为”post” 必须将&lt;form&gt;表单中的enctype设置为”multipart/form-data” ...

nailnehc的博客 1037

硅谷刷屏的ClawdBot,让Mac mini卖爆了!创始人爆料:一人开发、100% AI 写代码

这两天,个人 AI 助手 ClawdBot 席卷硅谷,国内外社交平台上全是关于它的讨论。 在试用后,网友们纷纷给出了很高的评价。“它是迄今为止最伟大的 AI 应用,相当于你 24 小时全天候专属 AI 员工。”Creator Buddy 创始人兼 CEO Alex Finn 盛赞道,“这就是他们 (Anthropic) 希望 Claude Cowork 呈现的样子。”

技术引领业务创新 1584

【漏洞复现】7-Zip目录穿越漏洞(CVE-2025-11001)

摘要:CVE-2025-11001是7-Zip(v21.02-v24.09)Windows版处理ZIP包符号链接时的高危漏洞,攻击者可构造恶意ZIP文件实现目录穿越和任意文件写入。漏洞源于路径检查缺陷,当用户解压含特殊符号链接的压缩包时,可能将文件写入系统目录。复现利用GitHub公开的Python脚本(https://github.com/pacbypass/CVE-2025-11001)可生成攻击包,需注意该漏洞仅影响Windows且需要用户交互。

LongL_GuYu的博客 1608

Struts——文件上传

回顾: Struts提交的文件上传组件来上传文件: 前台 提交方式POST 表单类型:multipart/form-date input type=“file” 后台 Apache提供的FileUpload组件 核心类: FileItemFactory //FileItem的核心工厂 ServletFileUpload //servlet中文件上传的核心类 ...

ljinshuo的博客 154

锂电池主动均衡理解

锂电池主动均衡方案总结: 来自:http://wenku.baidu.com/link?url=EWiyACZ3aLPhcOjI4FZL3uQ9d0FD6dBhADQSVQiaSmRHHATTdSig1Wy39JY7-ijCzbAEYG1ymz6Lv5zhGdZaStQSHzFt6v3h3_tMrJudz9O 目前车厂采用被动均衡方案的公司:(来自网页) 目前采用主动均衡的...

weixin_34365417的博客 2909

struts2 文件上传

在开发基于Web的应用的时候,经常会碰到需要实现文件上传、下载的功能,比如编辑某个商品,需要给它上传一个图片等等。  不使用Struts2的话,可以有很多种方式来实现文件上传,比如使用Apache的Common-FileUpload等。但是这些传统的方式,实现起来非常麻烦,需要写很多代码来进行控制。  现在使用Struts2来实现文件上传的功能,会更加简单和方便,事实上,Struts2

学习笔记 1990

OpenFOAM算例文件结构深度解析:以cavity案例为例教你读懂每个文件夹的作用

本文以OpenFOAM经典cavity案例为例,深度解析CFD算例文件结构。详细阐述了0、constant、system三个核心目录的作用:0存放初始与边界条件,constant定义物理属性和网格,system控制求解策略。通过剖析关键文件,帮助用户理解每个参数的意义,掌握从读懂到定制算例的能力,为高效使用这一开源CFD工具奠定坚实基础。

beer8的博客 237

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Struts2文件上传(基于表单的文件上传)

•Commons-FileUpload组件 –Commons是Apache开放源代码组织的一个Java子项目,其中的FileUpload是用来处理HTTP文件上传的子项目 •Commons-FileUpload组件特点 –使用简单:可以方便地嵌入到JSP文件中,编写少量代码即可完成文件的上传功能 –能够全程控制上传内容 –能够对上传文件的大小、类型进行控制 •需要下载Common-FileUpla...

qq_42574855的博客 168

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

struts2的文件上传

如何在Struts 2文件上传作品? Struts 2中使用的文件上传拦截器添加在Struts应用程序上传文件的支持服务。 基于Struts 2的文件上传拦截MultiPartRequestWrapper,这是自动应用的要求,如果它包含文件中的元素。然后,它增加了以下参数要求(假设上传的文件名 是文件MyFile)。 MyFile :文件-实际的文件MyFileContentType

ba5189tsl的专栏 894

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Struts文件上传

UploadUitl.java /**  * 这是一个辅助类,辅助完成上传功能。  * 可以选择将文件保存在数据库里或保存在文件系统上  * 并对文

robin622的专栏 521

java struts 文件上传与文件下载

今天和大家继续分享java struts 文件控制上传和下载。 文件上传:指将本地文件上传到服务器指定目录下。在struts框架中,文件上传需要用到&lt;s:file&gt;标签,该标签是一个表单标签,要放在&lt;s:form&gt;标签中。现在看一个文件上传的实例,进而讲解各个标签的含义及其用法。 创建项目 把lib标签以及web.xml配置好,在之前的博客已经分享。 在src目录下...

yy_dream_one的博客 2253

struts文件上传和拦截器

目录前言(1)文件上传的讲解前台界面clzList.jspstruts-sy.xmlupload.jsp后台代码ClzzAction的preupload方法ClzzAction的upload方法文件上传的底层原理(2)拦截器的讲解创建拦截器OneInterceptor拦截器TwoInterceptor拦截器struts自带的拦截器拦截器的底层原理总结 前言 上面一篇已经说明了如何在使用struts...

旺旺的博客 644

Struts 的文件上传组件org.apache.struts.upload

Struts 的文件上传组件org.apache.struts.upload用过多种java的文件上传组件,感觉都不是太方便,或者在windows与linux下转换的兼容性不太好,或者只能处理文件上传,而不能同时处理文件和其他表单信息的传递。前两天尝试用struts的upload组件,根据网上找到的一些资料,修改我项目中的一个Action、Actionform和ftl模板,使得它们支持org.ap

我的专栏 4733

struts实现文件上传

文章目录配置文件上传方法完善上传方法拦截器设置文件上传要求 通常情况下,文件上传分为三种, 1,上传到tomcat服务器,也就是放入到tomcat项目里,这样会导致图片或者文件和项目高偶藕性,可能会有导致其他的一些错误。 2,上传到指定文件目录,添加服务器与真实目录的映射关系,从而解耦上传文件与tomcat的关系文件服务器。 3,在数据库表中建立二进制字段,将图片存储到数据库。这种方式如果是数据只...

大屌的博客 340

struts文件上传

@struts文件上传doc或者docx文档(文档中本身有页眉),最终是将文档转换成图片 将上传的文件中的页眉替换为新的页眉内容,例如本身上传的文档中的页眉是:测试页眉,而项目中需要修改为“20190524001”,那么就需要在上传的时候,将文件上传到项目中的webapp中的某个目录下,然后将这个文件的页眉替换掉,然后在转换为图片上传保存,具体代码 在上传的时候,判断文档是doc或者docx以后 ...

qq_41955582的博客 267

Struts1实现文件上传

引言          学习了框架之后,就要进行小例子的应用了……下面小编就敲了一个文件上传的例子,还请大家指教! 主要步骤 1、创建用于文件上传的jsp相关页面 1)index.jsp <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.g

邢玉 傻傻的坚持,总有一天会成功! 2680

Struts2之文件上传

由于Struts2已经对文件上传进行了封装,所以较为简单,导入Struts2相应的java包,commons-fileupload.jar、commons-io.jar是其依赖的jar包。 使用Struts2的文件上传主要有一下步骤: (1)定义文件上传的表单,包含文件上传表单项。 (2)在form上将enctype属性设置为"multipart/form-

麒麟木木 2309
上一篇: [学习笔记] EL 使用EL表达式获得作用域属性
下一篇: [struts]使用过滤器设置字符集实现中文数据的提交
lovejavalovejava
博客等级 码龄19年 56粉丝 62原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值