您的位置:首页 > 编程语言 > Java开发

Spring mvc上传图片到本地服务器

2016-06-02 22:53 459 查看

首先配置在tomcat配置一个虚拟目录,作为上传图片的服务器



spring mvc的基本配置



加入需要的jar包



jsp页面或者html页面



cotroller

//图片上传controller

@Controller

public class UpLoadPicController {

@Resource(name=”upLoadPicService”)

private UpLoadPicService upLoadService;

@RequestMapping("/pic/upload")
@ResponseBody
public String upLoadPic(MultipartFile uploadFile){
//火狐浏览器不完全兼容kinderEditor
Map result=upLoadService.picUpLoad(uploadFile);
String resultJson=JsonUtils.objectToJson(result);
return resultJson;
}


}

Service代码实现

package com.taotao.service.impl;

import java.io.File;

import java.io.FileOutputStream;

import java.util.HashMap;

import java.util.Map;

import org.joda.time.DateTime;

import org.springframework.stereotype.Service;

import org.springframework.web.multipart.MultipartFile;

import com.taotao.service.UpLoadPicService;

import com.taotao.util.IDUtils;

@Service(“upLoadPicService”)

public class UpLoadPicServiceImpl implements UpLoadPicService{

@Override
public Map picUpLoad(MultipartFile multipartFile) {
Map resultMap=new HashMap();//图片上传后的返回值  不用定义pojo了
//图片名称
String oldName=multipartFile.getOriginalFilename();
String newName=IDUtils.getImageName();
newName=newName+oldName.substring(oldName.lastIndexOf("."));
//保存图片的地址
String datePath=new DateTime().toString("\\yyyy\\MM\\dd");  // Joda jar利用日期格式在分类 \2016\6\2
String urldatepath=new DateTime().toString("/yyyy/MM/dd");
String saveFilePath="K:\\develop\\upload\\picture"+datePath; //本地物理路径
/* 构建文件目录 */
File fileDir = new File(saveFilePath);
if (!fileDir.exists()) {
fileDir.mkdirs();
}
try {
FileOutputStream out = new FileOutputStream(saveFilePath + "\\"
+ newName);     //从本地文件
// 写入文件
out.write(multipartFile.getBytes());
out.flush();
out.close();
resultMap.put("error",0);
resultMap.put("url", "http://localhost:8080/pic"+urldatepath+"/"+newName);
return resultMap;

} catch (Exception e) {
resultMap.put("error",1);
resultMap.put("message", "文件上传错误");
return resultMap;
}

}


}

说明

因为前台页面是easyUI编写,都是些ajax请求,页面组装的数据也多为json数据格式 大家可以忽略
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring spring mvc