需要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. UML类图几种关系的总结[转]

    原文地址:http://www.open-open.com/lib/view/open1328059700311.html 在UML类图中,常见的有以下几种关系: 泛化(Generalization) ...

  2. (转)集成架构:对比 Web API 与面向服务的架构和企业应用程序集成

    摘要:总体上讲,SOA 和 Web API 似乎解决的是同一个问题:以实时的.可重用的方式公开业务功能.本教程将分析这些举措有何不同,以及如何将它们融入到一个不断演变的集成架构中.文中还将讨论 API ...

  3. ionic2 Navigation实现报错:No component factory found for "MyComponent"

    ionic2 写的代码里面,跳转的时候报了一个 No component factory found for "RechargeSucceed" recharge() { let ...

  4. IOS做一个简单计算器

    //声明非原创 步骤: 1.打开Xcode,单机Creat a new Xcode project 2.左边选择ios下Application,右边选择single view Application ...

  5. python自定义日志函数测试

    #!/user/bin/python # -*- encoding: UTF-8 -*- import sys def logs(): print sys._getframe().f_code.co_ ...

  6. <Apache服务的搭建"三件套"《目录验证》《虚拟主机》《加密证书》>

    自己没事会整理一些小知识,复习原来的同时也帮助新手. vvvvvvvvvvvvv开启apache目录验证vvvvvvvvvvvvvv htpasswd -cm uers redhat  //redha ...

  7. 《通过脚本查看哪些ip被占用》shell笔记

    改脚本查看哪些ip被占用. #!/bin/bash for i in {1..10}   //赋予i变量1-10 do   //干什么 ping -c1 -w1 192.168.7.$i && ...

  8. Winform ListView根据条件定位到指定行

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  9. WPF 绑定三(绑定List中指定的字符串)

    xaml: <Window x:Class="WpfApplication1.Window3" xmlns="http://schemas.microsoft.co ...

  10. CLR via C# I/O基元线程同步构造

    1. 分为用户模式构造和内核模式构造 2. 用户模式构造 a.易失构造 在一个简单数据类型的变量上执行原子性读或写操作 VolaileWrite 强制address中的值在调用时写入,除此之外,按照源 ...