需要jsmartcom_zh_CN.jar支持. 下载地址: http://files.cnblogs.com/simpledev/jsmartcom_zh_CN.rar

<%@page import="com.bn.car.core.Constants"%>
<%@ page contentType="text/html;charset=UTF-8" language="java"
import="java.io.*,java.awt.Image,java.awt.image.*,com.sun.image.codec.jpeg.*,java.sql.*,com.jspsmart.upload.*,java.util.*"%> <%
String pageSource = request.getParameter("pageSource"); //定义接收的源页面,可以将该图片上传工具类独立抽象出来放入include文件夹中。 SmartUpload mySmartUpload = new SmartUpload(); long file_size_max = 4000000; String fileName2 = "", ext = "", testvar = ""; String url = ""; if(pageSource == "addparts" || pageSource.equals("addparts")){
url = Constants.PARTSPATH; //常量类定义上传目录
}else if(pageSource == "addcar2" || pageSource.equals("addcar2")){
url = Constants.CARPATH; //常量类定义上传目录
} //初始化
mySmartUpload.initialize(pageContext); //只允许上载此类文件
try {
mySmartUpload.setAllowedFilesList("jpg,gif");//此处的文件格式可以根据需要自己修改
//上载文件
mySmartUpload.upload();
} catch (Exception e) {
%> <SCRIPT language=javascript>
alert("只允许上传.jpg和.gif类型图片文件");
</script>
<%
} try {
com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(0);
if (myFile.isMissing()) {
%> <SCRIPT language=javascript>
alert("请先选择要上传的文件");
</script> <%
}
else {
ext = myFile.getFileExt(); //取得后缀名
int file_size = myFile.getSize(); //取得文件的大小
String saveurl = "";
if (file_size < file_size_max) {
//更改文件名,取得当前上传时间的毫秒数值
Calendar calendar = Calendar.getInstance();
String filename = String.valueOf(calendar.getTimeInMillis());
//图片上传地址
saveurl = Constants.ROOTPATH + url;
String pic_url = filename + "." + ext; //文件名+后缀
saveurl += pic_url; //保存路径 myFile.saveAs(saveurl, SmartUpload.SAVE_PHYSICAL); String ret = "alert('上传成功!');"; out.print("<script language=javascript>" + ret + "</script>"); //将新上传的图片放入到session中.
String picUrls = (String)session.getAttribute(pageSource + "_picUrls"); if(picUrls == null){
session.setAttribute(pageSource + "_picUrls",pic_url);
}else{
picUrls = pic_url + "," + picUrls; //以逗号分割. 新上传的在前面
session.setAttribute(pageSource + "_picUrls",picUrls);
} //转发,根据原来的页面判断去向。
if(pageSource == "addparts" || pageSource.equals("addparts")){
response.sendRedirect("../supply/addparts.jsp");
}else if(pageSource == "addcar2" || pageSource.equals("addcar2")){
response.sendRedirect("../caruser/addcar2.jsp");
} } } } catch (Exception e) {
e.printStackTrace();
out.print(e.toString()); }
%>

JSP图片上传 公共工具类的更多相关文章

  1. FTP上传-封装工具类

    import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import ja ...

  2. ftp上传下载工具类

    package com.taotao.utils; import java.io.File; import java.io.FileInputStream; import java.io.FileNo ...

  3. jsp图片上传

    1.要实现图片上传,首先需要一个组件,这里我用的是smartupload.jar可以到这里下载http://download.csdn.net/detail/mengdecike/8279247 2. ...

  4. [xPlugin] smartupload jsp图片上传

    URL:http://www.cnblogs.com/ISeeYouBlogs/p/jsp.html 1.要实现图片上传,首先需要一个组件,这里我用的是smartupload.jar可以到这里下载ht ...

  5. 博客图片上传picgo工具安装配置github图传使用

    摘要 对于每一个写博客的人来说,图片是至关重要.这一路经历了多次图片的烦恼,之前选择了微博个人文章那里粘贴图片的方式上传,感觉也挺方便的.但是由于新浪的图片显示问题,如果header中不设置 标签就不 ...

  6. 高可用的Spring FTP上传下载工具类(已解决上传过程常见问题)

    前言 最近在项目中需要和ftp服务器进行交互,在网上找了一下关于ftp上传下载的工具类,大致有两种. 第一种是单例模式的类. 第二种是另外定义一个Service,直接通过Service来实现ftp的上 ...

  7. Spring MVC文件上传下载工具类

    import java.io.File; import java.io.IOException; import java.io.UnsupportedEncodingException; import ...

  8. java ftp上传文件 工具类

    package com.learning.spboot.utils; import com.jcraft.jsch.*; import org.apache.commons.net.ftp.FTPCl ...

  9. java上传文件工具类

    这个是之前整理之前所学时与使用java向邮箱发送邮件一块找到的,一起贴出来供大家参考: import java.awt.image.BufferedImage; import java.io.File ...

随机推荐

  1. Facade模式和Mediator模式

    相同的目的:把某种策略施加到另一组对象上. Facade从上面施加策略. 其使用是明显且受限的.当策略涉及范围广泛并且可见时. 约定的关注点.都同意使用Facade而不是隐藏于其下的对象. Media ...

  2. IC卡的逻辑卡号和市民卡卡号

    CPU卡,IC卡等的卡号与卡在出厂时的卡号.

  3. python 实现梯度下降

    在多元线性回归中会用到梯度下降来计算参数值.这里我用python实现一个梯度下降版本. 这里多元线性方程为 y = A0+A1*x1+...+An* xn 数据输入格式,y表示 y \t x1 \t ...

  4. FTP 数字代码的意义

    110 重新启动标记应答. 120 服务在多久时间内ready. 125 数据链路埠开启,准备传送. 150 文件状态正常,开启数据连接端口. 200 命令执行成功. 202 命令执行失败. 211 ...

  5. cadence16.3破解方法

    今天安装cadence16.3,安装了两遍都失败了,百思不得其解,结果总是出现在license上,如下图所示: 后面当然就只能启动demo版了,于是网上找,参照以前古老的法子,终于解决问题! 首先,开 ...

  6. 转:Android studio Gradle

    提高Android Studio中Gradle执行效率 分类: android studio2015-06-26 11:54 2374人阅读 评论(2) 收藏 举报 android studiogra ...

  7. C#主要支持 5 种动态创建对象的方式

    C#主要支持 5 种动态创建对象的方式: 1. Type.InvokeMember 2. ContructorInfo.Invoke 3. Activator.CreateInstance(Type) ...

  8. 基础学习总结(六)--getContentRolver()的应用、内容监听者ContentObserver

    ContentResolver / getContentResolver()   外界的程序通过ContentResolver接口可以访问ContentProvider提供的数据,在Activity当 ...

  9. WordPress 主题开发 - (五)WordPress 主题模板及目录结构 待翻译

    While the most minimal of WordPress Themes really only need an index.php template and a style.css fi ...

  10. win7 64位下jboss配置

    1.下载Jboss7 下载地址:http://www.jboss.org/jbossas/downloads/ 2.解压到一个目录,如D:\Working,最终路径是D:\Working\jboss- ...