使用jsp+servlet+commons-fileupload上传图片的时候出现无法获取图片项

在使用jsp+servlet+commons-fileupload进行图片上传时遇到问题,无法获取图片文件项。经过排查,发现在前端JSP页面的input[type=file]标签缺少了name属性,导致文件内容为空。添加了name属性后,图片上传功能恢复正常。接下来将研究这个问题的原理。
摘要由CSDN通过智能技术生成


在做个小项目的过程中需要用到图片上传功能,于是使用一个适用于小文件上传的commons-fileupload组件。

其响应过程是这样的:在jsp页面通过input标签获得图片文件==>发送到servlet中处理==>servlet中验证大小、格式等,最后写入硬盘与路径保存到数据库==>控制页面跳转

servlet处的处理代码我就不多提了,和各大网站上大家的处理方式差不多,无非就是遵循以下几个步骤:

1、在doPost方法中通过request请求对象获取含有二进制流的表单内容;

2、通过工厂DiskFileItemFactory来构建上传对象ServletFileUpload;

3、开始自己需要的业务验证(我这里验证了文件大小、是否直接路径访问、文件是否为空文件、是否超出规定的格式);

4、写入硬盘/数据库记录


前端JSP页面的关键代码如下:

<form action="test" method="post" enctype="multipart/form-data">
	<%
		session
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值