上传图片注意事项

ENCTYPE="multipart/form-data"用于表单里有图片上传。 
<form name="userInfo" method="post" action="doupload.jsp"    ENCTYPE="multipart/form-data"> 
表单标签中设置enctype="multipart/form-data"来确保匿名上载文件的正确编码。 
就得加ENCTYPE="multipart/form-data"。 
表单中enctype="multipart/form-data"的意思,是设置表单的MIME编码。默认情况,这个编码格式是application/x-www-form-urlencoded,不能用于文件上传;只有使用了multipart/form-data,才能完整的传递文件数据,进行下面的操作. 

enctype="multipart/form-data"是上传二进制数据; form里面的input的值以2进制的方式传过去。 form里面的input的值以2进制的方式传过去,所以request就得不到值了。 也就是说加了这段代码,用request就会传递不成功,取表单值加入数据库时,用到下面的: 

SmartUpload su = new SmartUpload();//新建一个SmartUpload对象 
su.getRequest().getParameterValues();取数组值 

su.getRequest().getParameter( );取单个参数单个值


上传图片前的准备及上传图片:

// 新建一个SmartUpload对象

SmartUpload su = new SmartUpload();

// 上传初始化

su.initialize(pageContext);

// 设定上传限制

// 1.限制每个上传文件的最大长度。

su.setMaxFileSize(10000000);

// 2.限制总上传数据的长度。

su.setTotalMaxFileSize(20000000);
// 3.设定允许上传的文件(通过扩展名限制),仅允许doc,txt文件。

su.setAllowedFilesList("doc,txt,jpg");

// 4.设定禁止上传的文件(通过扩展名限制),禁止上传带有exe,bat,

su.setDeniedFilesList("exe,bat,jsp,htm,html,,");

// 上传文件

su.upload();

// 将上传文件全部保存到指定目录

su.save(getServletContext().getRealPath("/"));


获取上传文件的各个属性:

com.jspsmart.upload.File file = su.getFiles().getFile(0);
// 若文件不存在则继续
表单项名(FieldName):file.getFieldName() 

文件长度(Size): file.getSize() 

文件名(FileName): file.getFileName() 

文件扩展名(FileExt): file.getFileExt() 
文件全名(FilePathName): file.getFilePathName() 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值