45fan.com - 路饭网

搜索: 您的位置主页 > 网络频道 > 阅读资讯:怎么样使用SmartUpload上传图片?

怎么样使用SmartUpload上传图片?

2016-08-30 11:00:30 来源:www.45fan.com 【

怎么样使用SmartUpload上传图片?

记得下载jar包啊 别忘了把名改成smartUpload.jar

UploadFiles/2006-8/816529534.rar

Utility类:

package com.tidyinfo.utils;

import java.util.Calendar;

public class Utility {

//生成形如:/2006/08/18的路径
private String path;

//生成形如: 20060818125012的唯一id号
private String id;

//生成形如:/2006/08/18的路径
private String url;

private String hour;

private String year;

private String month;

private String day;

private String minate;

private String second;

/** Creates a new instance of Utility */
public Utility() {
this.year =new Integer(Calendar.getInstance().get(Calendar.YEAR)).toString();
this.month = parseToString(Calendar.getInstance().get(Calendar.MONTH)+1);
this.day = parseToString(Calendar.getInstance().get(Calendar.DAY_OF_MONTH));
this.hour = parseToString(Calendar.getInstance().get(Calendar.HOUR_OF_DAY));
this.minate = parseToString(Calendar.getInstance().get(Calendar.MINUTE));
this.second = parseToString(Calendar.getInstance().get(Calendar.SECOND));
this.setId();
this.setPath();
this.setUrl();
}

protected String parseToString(int i){
return i<10?("0"+i):new Integer(i).toString();
}

public String getId(){
return this.id;
}

public String getPath(){
return this.path;
}

public String getUrl(){
return this.url;
}

protected void setId(){
this.id = this.year+this.month+this.day+this.hour+this.minate+this.second;
}

protected void setPath(){
this.path = "//"+this.year + "//" + this.month + "//" +
this.day ;
}

protected void setUrl(){
this.url = this.path.replace('//','/');
}

}

Action:(根据不同情况要更改相关代码)

User userForm = new User();
String result = new String();
SmartUpload su = new SmartUpload();

//文件名
String filename = new String();
//文件扩展名
String fileext = new String();

//文件上传后存储的路径
String path = request.getRealPath(request.getContextPath());
path = path.substring(0,path.lastIndexOf("//"));
path += "//images";

//图片的url
String url = new String();
//创建文件夹
java.io.File file = new java.io.File(path);
file.mkdirs();
try{
// 上传初始化
su.initialize(this.servlet.getServletConfig(),request,response);
//设定上传限制
//1.限制每个上传照片的最大长度。
su.setMaxFileSize(5000000);
//2.限制总上传数据的长度。
su.setTotalMaxFileSize(10000000);
//3.设定允许上传的照片(通过扩展名限制)。
su.setAllowedFilesList("jpg,gif,GIF,JPG");
//上传照片
su.upload();
//获得请求的表单数据
String username = su.getRequest().getParameter("username");//username
String password = su.getRequest().getParameter("password");//password
String sex = su.getRequest().getParameter("sex");//sex
String email =su.getRequest().getParameter("email");//email
String apwd =su.getRequest().getParameter("apwd");//question of password
String rpwd =su.getRequest().getParameter("rpwd");//anser of password
userForm.setUsername(username);
userForm.setPassword(password);
userForm.setSex(sex);
userForm.setEmail(email);
userForm.setApwd(apwd);
userForm.setRpwd(rpwd);

//将上传照片全部保存到指定目录
if(!su.getFiles().getFile(0).isMissing()){

su.save(path,su.SAVE_PHYSICAL);

//文件名
filename = su.getFiles().getFile(0).getFileName();
//得到扩展名
fileext = su.getFiles().getFile(0).getFileExt();
//给图片改名,命名形如:20060814135411.gif


Utility u = new Utility();
String newName = u.getId()+"."+fileext;

java.io.File oldFile = new java.io.File(path+"//"+filename);
java.io.File newFile = new java.io.File( path + "//"+newName);

//上传图片的url
url = request.getContextPath()+"/images/"+newName;

if(oldFile!=null){
oldFile.renameTo(newFile);
}else{
result+="命名出错!";
}
System.out.println("0000000000000000000"+filename);
System.out.println("0000000000000000000"+path+"//"+newName);
System.out.println("0000000000000000000"+url);
System.out.println(result);
}
}catch(com.jspsmart.upload.SmartUploadException e){
result += "file出错信息:";
result += e.getMessage();
System.out.println(result);
}

 

本文地址:http://www.45fan.com/a/question/69790.html
Tags: 图片 上传 smartupload
编辑:路饭网
关于我们 | 联系我们 | 友情链接 | 网站地图 | Sitemap | App | 返回顶部