jspSmartUpload使用初步
jsp中使用SmartUpload上传文件
1、下载jspSmartUpload组件后,解压缩。把com目录复制到应用程序的WEB-INF\classes目录下。
2、尤其注意
(1)文件上传表单要添加enctype="multipart/form-data",如:
<form action="product_update_ok.jsp?p_id=<%= p_id %>" method="post" onSubmit="return check_product(this);" enctype="multipart/form-data">
(2)对于文件上传表单,通过request对象无法获得表单项的值,必须通过jspSmartUpload组件提供的Request类来获取,如:
String p_name=su.getRequest().getParameter("p_name");
且该代码要放在文件上传代码之后。
3、主要代码
//新建上传对象
SmartUpload su=new SmartUpload();
// 上传初始化
su.initialize(pageContext);
// 设定上传限制
// 限制每个上传文件的最大长度。
// su.setMaxFileSize(10000);
// 限制总上传数据的长度。
// su.setTotalMaxFileSize(20000);
// 通过扩展名限制设定允许上传的文件,这里仅允许doc,txt文件。
// su.setAllowedFilesList("doc,txt");
// 通过扩展名限制设定禁止上传的文件,禁止上传带有exe,bat,jsp,htm,html扩展名的文件和没有扩展名的文件。
// su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
// 实现文件上传
su.upload();
// 将上传文件全部保存到指定目录,必须保证images目录在应用程序根文件夹中存在
//int count = su.save("/images", su.SAVE_VIRTUAL);
int count = su.save("/images");
String p_image_temp="";
if(count==1) //重新上传了图片
{
com.jspsmart.upload.File file = su.getFiles().getFile(0);
p_image_temp="images\\"+file.getFileName();
}
else
p_image_temp=(String)session.getAttribute("p_iamge"); //没有重新上传图片
//获取表单其他信息
String p_id=su.getRequest().getParameter("p_id");
String p_type=su.getRequest().getParameter("p_type");
String p_name=su.getRequest().getParameter("p_name");
String p_price=su.getRequest().getParameter("p_price");
String p_quantity=su.getRequest().getParameter("p_quantity");
String p_description=su.getRequest().getParameter("p_description");
String p_time=String.valueOf(date.getMonth()+1)+"-"+date.getDate()+"-20"+String.valueOf(date.getYear()).substring(1);
jspSmartUpload使用初步的更多相关文章
- 移动端之Android开发的几种方式的初步体验
目前越来越多的移动端混合开发方式,下面列举的大多数我都略微的尝试过,就初步的认识写个简单的心得: 开发方式 开发环境 是否需要AndroidSDK 支持跨平台 开发语言&技能 MUI Win+ ...
- CSharpGL(29)初步封装Texture和Framebuffer
+BIT祝威+悄悄在此留下版了个权的信息说: CSharpGL(29)初步封装Texture和Framebuffer +BIT祝威+悄悄在此留下版了个权的信息说: Texture和Framebuffe ...
- Android自定义View初步
经过上一篇的介绍,大家对于自定义View一定有了一定的认识,接下来我们就以实现一个图片下显示文字的自定义View来练习一下.废话不多说,下面进入我们的正题,首先看一下我们的思路,1.我们需要通过在va ...
- 初步认识Node 之Node为何物
很多人即便是在使用了Node之后也不知道它到底是什么,阅读完本文你应该会有一个初步的.具体的概念了. Node的目标 提供一种简单的构建可伸缩网络程序的方法.那么,什么是可伸缩网络程序呢?可伸缩 ...
- [入门级] 基于 visual studio 2010 mvc4 的图书管理系统开发初步 (二)
[入门级] 基于 visual studio 2010 mvc4 的图书管理系统开发初步 (二) Date 周六 10 一月 2015 By 钟谢伟 Category website develop ...
- 基于C/S架构的3D对战网络游戏C++框架_05搭建系统开发环境与Boost智能指针、内存池初步了解
本系列博客主要是以对战游戏为背景介绍3D对战网络游戏常用的开发技术以及C++高级编程技巧,有了这些知识,就可以开发出中小型游戏项目或3D工业仿真项目. 笔者将分为以下三个部分向大家介绍(每日更新): ...
- Azure底层架构的初步分析
之所以要写这样的一篇博文的目的是对于大多数搞IT的人来说,一般都会对这个topic很感兴趣,因为底层架构直接关乎到一个公有云平台的performance,其实最主要的原因是我们的客户对此也非常感兴趣, ...
- CozyRSS开发记录14-RSS源管理初步完工
CozyRSS开发记录14-RSS源管理初步完工 1.添加源的响应 DialogHost.Show有几个版本的重载,加一个DialogClosingEventHandler参数.我们让添加源对话框的添 ...
- 初步了解CPU
了解CPU By JackKing_defier 首先说明一下,本文内容主要是简单说明CPU的大致原理,所需要的前提知识我会提出,但是由于篇幅我不会再详细讲解需要的其他基础知识.默认学过工科基础课. ...
随机推荐
- IOS解惑(1)之@property(nonatomic,getter=isOn) BOOL on;中的getter解惑
1 问题: @property(nonatomic,getter=isOn) BOOL on; 中的getter = isOn的含义? 2 答案: 如果这个property是 BOOL on, 那么O ...
- Android Lock Pattern 图案解锁
参考链接:http://www.cnblogs.com/dyingbleed/archive/2012/12/03/2800007.html http://blog.csdn.net/way_ping ...
- MySQL 性能跟踪方法
https://www.cnblogs.com/zhoujinyi/p/5236705.html https://dev.mysql.com/doc/refman/5.7/en/slow-query- ...
- (原创)谈谈boost.asio的异步发送
在上一篇博文中提到asio的异步发送稍微复杂一点,有必要单独拿出来说说.asio异步发送复杂的地方在于: 不能连续调用异步发送接口async_write,因为async_write内部是不断调用asy ...
- 连接web端,mysql,返回乱码解决
参考:http://yushan.iteye.com/blog/265019
- 【教程】Source Insight 关联 .S文件,汇编文件
加载.s汇编文件 做ARM嵌入式开发时,有时得整汇编代码,但在SI里建立PROJECT并ADD TREE的时候,根据默认设置并不会把该TREE里面所有汇编文件都包含进来,默认只加了.inc和.asm后 ...
- Git详解之Git分支
Git 分支 几乎每一种版本控制系统都以某种形式支持分支.使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作.在很多版本控制系统中,这是个昂贵的过程,常常需要创建一个源代码目录的 ...
- RFC 4627 JSON
Network Working Group D. Crockford Request for Comments: 4627 JSON.org Category: Informational July ...
- Caused by: java.io.IOException: Added a key not lexically larger than previous.
为了重复这个实验,遇到不少坑 https://www.iteblog.com/archives/1889.html /** * Created by Administrator on 2017/8/1 ...
- mysql5.5编译安装过程(自己总结)
一,安装过程 //创建mysql安装目录,创建数据存放目录,创建用户和用户组与赋予数据存放目录权限 mkdir -p /usr/local/mysql/ mkdir -p /data/mysql/ g ...