jsp/servlet:easyjweb中文件上传的处理

ApacheCordova 13 +Vs 2026 项目搭建教程_开发环境搭建教程 本文介绍基于Cordova 13.0.0、Android 13.0.0及JDK 21.0.8的开发环境搭建流程。通过npm全局安装Cordova CLI创建项目,配置JDK与Android SDK环境变量(Java_Home、ANDROID_SDK_ROOT),并设置Gradle 8.14.7路径。使用VS Code配合CordovaTools插件进行开发调试,验证adb devices连接状态。特别说明VS2026中JDK/Sdk位于H:\dev\vsshared\Android目录,适用于.Net MA 阅读详情

在struts中,引入org.apache.struts.upload包,对apache commons fileupload上传组件进行封装处理文件的上传,formbean中定义formfile接口来接收上传文件。

  由于easyjweb定位于中小型项目应用,因此简化了上传的处理,直接使用apache commons fileupload来处理上传。由于框架核心引擎中对上传的内容已经自动进行了处理,因此,在action中,处理上传文件跟处理一般的文本字段没有什么区别!

  废话不多说,直接进入正题:
  
1、上传表单
  如开源的easyjf bbs系统中的上传示例代码,html表单部分内容如下:
  < form name="editform" enctype="multipart/form-data" method="post" action="/bbsupload.ejf" style="height:0px">
 < input type="file" name="file"  style="width:100%">
 < input type="hidden" name="easyjwebcommand" value="upload">
 < input type="hidden" name="parentobj">
 < input type="hidden" name="types">
 附件说明:< input type="text" name="intro" size=20>

< /form>

  其中enctype="multipart/form-data"必须的,method="post"也必须。
   
    这个表单是一个混合表单,有type=file的文件上传框,也有type=text或hidden的普通文本框。

2、接收单个上传文件的java代码

  下面我们看看文件上传处理模块bbsupload中的java代码.

   com.easyjf.bbs.action.uploadaction.java
  
  import org.apache.commons.fileupload.fileitem;

  public class uploadaction implements iwebaction {
   public page execute(webform form, module module) throws exception {
     fileitem file=(fileitem)form.get("file");//文件对象
         string intro=(string)form.get("intro");//文本对象
     if(file!=null)
       {
        //得到上传文件,对上传文件进行处理,这里省略代码n行
       }
   }
}


3、接收处理多个文件上传的java代码
  
 com.easyjf.bbs.action.uploadaction.java
 
iterator it = form.getfileelement().keyset().iterator();
while(it.hasnext()) {
string fieldname = (string) it.next();//表单字段名
fileitem file = (fileitem) form.get(fieldname);//文件对象
if(file!=null)
{
//得到上传文件,对上传文件进行处理,这里省略代码n行

}

}

4、关于org.apache.commons.fileupload.fileitem 
 
  这是apache的开源上传组件apache commons-fileupload中的一个类,easyjweb核心引擎使用他来处理上传文件的。
   通过fileitem类我们可以得到上传文件的大小、路径、文件名等信息,也可以通过filteitem类的write方法把上传文件保存到服务器中。如论坛中的代码:


    file.write(new file(filepath + filename));
   //示例file.write(new file("c://test/up.txt"));


  详细请看apache官方网站.地址:http://jakarta.apache.org/commons/fileupload/

5、上传中的注意事项

  需要对上传文件进行过滤,以防黑客上传如.jsp的木马文件到服务器上。若上传来的文件不希望用户直接通过url访问,则可考虑保存到web应用程序web-inf目录下,或者web应用程序以外的目录。


easyjweb简介

  easyjweb是基于java技术,应用于web应用程序快速开发的mvc框架,框架设计构思来源于国内众多项目实践,充分借签了当前主要流行(主流)的开源web框架(struts、jsf、tapestry 、webwork),吸取了其优点及精华,利用velocity作为模板页面引擎,是一个实现了页面及代码完全分离的mvc开发框架,是一个旨在于为中小型web应用系统提供快速开发实践的简易web框架。

  easyjf开源团队于2006年初才开始建设,因此当前整个开发团队组建以及所发布的作品,都显得极不成熟。easyjweb仍然处于测试阶段,请广大的java爱好者多多批评及建议。同进也非常欢迎您能加入到我们的国产开源队伍中。
          (责任编辑:包春林)


RK3588 buildroot 制作的系统增加 docker 支持 RK3588 使用buildroot制作的系统添加 docker 和 docker-compose 的功能 阅读详情

相关推荐

Python实战:逐笔高频因子构建与回测全流程解析

本文详细解析了使用Python构建与回测逐笔高频因子的全流程。从逐笔数据的价值与清洗入手,通过实战代码演示了‘大买成交金额占比’因子的计算逻辑,并重点阐述了因子正交化处理的重要性以剔除风格影响。最后,提供了一个经典的分位数回测框架来验证因子有效性,并分享了数据质量、计算效率与过拟合等核心避坑指南。

grass的博客 394

图解EasyJWeb框架结构

  这是今天用MyEclipse生成的EasyJWeb的总体UML类结构图,MyEclipse还真是不错,尽然能把相关的生成在一起,有了这一幅图,对于了解当前EasyJWeb框架的核心原理基本足够了。EasyJWeb项目的核心是一个Web MVC框架,主要是由ActionServlet、RequestProcessor、IWebAction、WebForm为核心的一系列类。EasyJWeb的第

蔡世友-重出江湖 4133

电机控制实战:SVPWM五段式与七段式算法在STM32上的实现对比

本文深入对比了SVPWM五段式与七段式算法在STM32上的实现效果,详细分析了两种算法在占空比控制、开关损耗和波形质量等方面的差异。通过实测数据,为工程师提供了针对不同应用场景的选型建议,包括电池供电设备和高精度伺服控制系统的优化方案。

h6i7j8的博客 584

JSP/Servlet:EasyJWeb中文件上传的处理

 在struts中,引入org.apache.struts.upload包,对Apache Commons fileupload上传组件进行封装处理文件的上传,Formbean中定义FormFile接口来接收上传文件。  由于EasyJWeb定位于中小型项目应用,因此简化了上传的处理,直接使用Apache Commonsfileupload来处理上传。由于框架核心引擎中对上传的

kinglino520的专栏 414

RoboMaster机甲大师赛备赛:如何用STM32+CAN总线精准控制四个大疆3508电机?

本文详细介绍了在RoboMaster机甲大师赛中,如何利用STM32和CAN总线技术精准控制四台大疆3508电机。从硬件架构设计、多电机ID分配、数据解析到同步控制算法,全面解析了构建高响应、低延迟底盘驱动系统的关键技术,助力参赛队伍提升机器人运动性能。

weixin_28684825的博客 134

【100%通过率】华为OD机试真题 Python【数字最低位排序】【最低位排序】

2023华为OD机试真题 Python【数字最低位排序】【最低位排序】 给定一个非空数组(列表) 起元素数据类型为整型 请按照数组元素十进制最低位从小到大进行排序 十进制最低位相同的元素,相对位置保持不变 当数组元素为负值时,十进制最低为等同于去除符号位后对应十进制值最低位

MISAYAONE的博客 1902

java jsp框架_介绍几个开源的JSP开发框架

以下介绍几个开源的JSP开发框架。WebWorkWebWork是由OpenSymphony组织开发的,致力于组件化和代码重用的拉出式MVC模式J2EE Web框架。WebWork目前***版本是2.1,现在的WebWork2.x前身是Rickard Oberg开发的WebWork,但现在WebWork已经被拆分成了Xwork1和WebWork2两个项目。 Xwork简洁、灵活功能强大,它是一个标准...

weixin_28861381的博客 3903

【保姆级教程】基于UNet++&MobileNetv2的语义分割模型从训练到RK3588部署:让边缘AI落地效率提升300%

通过SMP库一键构建encoder_name="mobilenet_v2", # 选择MobileNetv2作为骨干encoder_weights="imagenet", # 加载预训练权重加速收敛in_channels=3, # 输入图像通道数(RGB)classes=29, # Cityscapes数据集类别数activation=None # 输出无激活,便于后续损失计算本教程从“模型设计-训练-转换-边缘部署”全链路拆解了。

m0_71589036的博客 89

JAVA Web开发框架分类列表(一)

♦  WebWorkWebWork是由OpenSymphony组织开发的,致力于组件化和代码重用的拉出式MVC模式J2EE Web框架。WebWork目前最新版本是2.1,现在的WebWork2.x前身是Rickard Oberg开发的WebWork,但现在WebWork已经被拆分成了Xwork1和WebWork2两个项目。 Xwork简洁、灵活功能强大,它是一个标准的Command模式实现,

木头的专栏 953

AgentScope深入分析-ReActAgent

ReActAgent 是 AgentScope 框架中最核心的智能体实现,它完美诠释了"推理-行动"(Reasoning-Acting)循环的精髓。本文将深入分析 ReActAgent 的类继承关系、核心执行流程,以及状态管理、钩子机制、实时介入等关键技术点。通过阅读本文,你会理解智能体如何与模型交互、如何执行工具、如何处理中断,以及这些机制背后的设计考量。模块化:通过组合不同的组件(模型、格式化器、工具集、记忆)来构建智能体透明性:所有关键流程都对开发者可见,可以精确控制可扩展性。

842

为什么idea已经改了UTF-8还是乱码,如何解决?

🏆本文收录于 《全栈Bug调优(实战版)》 专栏,该专栏专注于分享我在真实项目开发中遇到的各类疑难Bug及其深层成因,并系统提供高效、可复现的解决思路和实操方案。无论你是刚入行的新手开发者,还是拥有多年项目经验的资深工程师,本专栏都将为你提供一条系统化、高质量的问题排查与优化路径,助力你加速成长,攻克技术壁垒,迈向技术价值最大化与职业发展的更高峰🚀!

**My Coding Family** 1578

转发和重定向的区别

 不要仅仅为了把变量传到下一个页面而使用session作用域,那会无故增大变量的作用域,转发也许可以帮助你解决这个问题。重定向:以前的request中存放的变量全部失效,并进入一个新的request作用域。转发:以前的request中存放的变量不会失效,就像把两个页面拼到了一起。正文开始:先是看上去不同,他们的调用分别如下:request.getRequestDispatcher("a

首席技术执行官CTO(Chief Technology Officer)|技术总监--邓斌博客 1308

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Java开源 Web开发框架

WebWork WebWork 是由OpenSymphony组织开发的,致力于组件化和代码重用的拉出式MVC模式J2EE Web框架。WebWork目前最新版本是2.1,现在的WebWork2.x前身是Rickard Oberg开发的WebWork,但现在WebWork已经被拆分成了Xwork1和WebWork2两个项目。 Xwork简洁、灵活功能强大,它是一个标准的Comman...

weixin_30765505的博客 387

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

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

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

java 开源论坛简介

JAVA 开源论坛简介   JspRun : 采用Struts1 + Jsp + UrlRewrite 等技术实现,技术上不是最新的。界面风格还不错,支持客户自定义。   mvnForum是基于javaJ2EE 技术(Jsp/Servlet)的一个开源论坛.,安装简单。mvnForum兼容任何Servlet容器,支持Jsp 1.2 and Servlet 2.3。 JForum   JF...

mojianpo 莫建坡 283

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

论J2EE程序员的武功修为

经常会跟一些朋友讨论怎么样才能学好Java,学到什么程度才算撑握了Java的问题。其中有一个J2EE程序员层次及武功修为的问题,有点意思。这里就把讨论的内容大致整理一下发出来,大家继续讨论。   纵观国内的软件行业,靠Java吃饭的程序员还真不是少,而且Java程序员是有很大优越感的,毕竟对于很多用b/s搞开发的业内朋友来说,Java技术意味着难度大、门槛高,因此相对来说Java程序员比其它的程...

编程代码大全 68

Apache Flink 零基础

低代码、易开发、易维护、可读性强,适配实时数仓分层、指标统计、数据清洗、多源数据关联等绝大多数业务场景,支持Kafka、Doris、MySQL、Hive等主流组件读写,是企业实时开发主流方案。:接收客户端提交的实时/离线任务、解析任务逻辑、生成DAG执行流程图、分配集群资源、调度任务运行、管理Checkpoint/Savepoint、处理任务故障重启、协调集群节点状态。手动触发的状态快照,主要用于任务升级、代码迭代、版本更新、集群迁移、任务重启等运维操作,保证业务无感知、数据不错乱、任务无缝恢复。

2402_85354210的博客 351

Apache Superset 集成实战:Embedded SDK + Guest Token + OAuth2/SSO 完整方案

本文整理自实际项目中的 Superset 集成方案,重点介绍业务系统如何嵌入 Dashboard、如何通过 Guest Token 完成免登录访问,以及管理员如何通过 OAuth2/SSO 进入 Superset 控制台。示例中的域名、账号、UUID 等均为通用示例,实际项目请通过环境变量、配置中心或 Secret 管理。

haohaoxuexiyai的博客 375

每天认识一个组件:Apache StreamPark

StreamPark 解决的核心问题,不是如何执行流计算,而是如何让流处理应用以统一、可管理的方式进入生产环境,它把 Flink 应用开发与运维中的重复工作收拢到统一控制面。

weixin_47983718的博客 519

京东 Apache Doris 湖仓查询优化实践:从多引擎统一到百万级查询

京东基于 Apache Doris 构建统一湖仓查询引擎,支撑日均百万级查询与 PB 级数据扫描。深入解析 Presto、StarRocks 迁移、分区裁剪、Split 调度、向量化执行及 AI Agent 混合负载优化实践。

SelectDB 428

Apache Doris 基础

需根据业务数据特征精准选择,选错模型会导致数据错误、查询性能极差。

2402_85354210的博客 375

每天认识一个组件:Apache Spark

Apache Spark 是一个面向大规模数据处理的统一分析引擎,支持多语言高级 API,并提供 Spark SQL、Structured Streaming、MLlib等上层能力,用一套执行引擎覆盖批处理、交互式分析、流处理、机器学习等场景。

weixin_47983718的博客 609

Casvisor 详解:Apache-2.0 开源堡垒机,一个 Go 二进制实现 SSH、RDP、VNC、Telnet 与会话录像

Casvisor 是 Apache-2.0 的开源堡垒机,用 Go 和 React 写,一个二进制里同时做了 SSH、RDP、VNC、Telnet 四种远程协议,带权限、命令审计、会话录像回放、SSH 网关和网域网关,默认 SQLite 加本地账号开箱即用。

Casbin开源社区 176

Apache2 Bash CGI:动态时间页面与请求验证

1. 服务介绍 CGI 让 Apache 执行服务端程序并将输出作为 HTTP 响应。本文用固定 Bash 脚本输出系统时间,说明响应头后的空行、模块与执行权限;不接受用户输入或拼接系统命令。 2. 准备运行环境 UOS/Debian 系 Apache2、Bash、管理员配置权限及隔离测试站点。先确认 Apache MPM 和现有虚拟主机,不将整个上传目录开

weixin_44524357的博客 263

IIS + 安全狗模块导致 w3wp.exe 程序池崩溃(0xc0000005)踩坑实录

本文记录一次因安全狗IISModule64.dll内存越界导致w3wp崩溃的线上故障,引发接口中断一小时。故障主因是公网暴露的API站点遭海外扫描器攻击,触发防护模块漏洞(0xc0000005),程序池挂死且自动保护机制锁死,无法自愈。应急方案包括:重启程序池、封禁攻击源、部署事件触发式自动重启任务。长期建议:升级安全狗、启用云WAF或白名单访问控制,实现流量清洗前置,避免防护模块与业务耦合。核心启示:对小程序/APP接口,应优先采用来源白名单,从源头杜绝风险,构建分层防御体系。

u013334925的博客 175

Apache Superset 重要特性详解(三):语义层 / 权限 / 缓存 / 嵌入的实战最佳实践(2026 版)

本文详解 Apache Superset 的四大核心生产实践:语义层建模(统一口径,指标唯一定义)、行级安全(RLS)(基于角色动态过滤数据)、缓存调优(配置 Redis 与 TTL 策略提升性能)、仪表盘嵌入(通过 guest token 实现系统集成)。结合决策图、命名规范与安全最佳实践,提供可直接复制的配置模板,助力企业构建可复用、安全、高性能的数据分析平台。

weixin_43128865的博客 700

Apache DolphinScheduler 2026 年 10 月社区贡献总结报告

2026年10月,Apache DolphinScheduler 社区共合并31个PR,17位贡献者参与,净增代码5,924行。以Bug修复为主(14项,占比45.2%),重点提升调度引擎稳定性,修复任务状态不一致、告警丢失等高风险问题。核心模块dolphinscheduler-master与task-plugin获重点关注,新增功能涵盖日期偏移占位符、自定义Kyuubi JDBC URL等。文档与易用性同步优化,社区持续强化系统可靠性与用户体验。

Apache DolphinScheduler开源社区 254
上一篇: 130道asp.net面试题和答案(二)
下一篇: asp.net3.5主机震撼登陆
Labber
博客等级 码龄19年 26粉丝 1976原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值