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

spring boot 图片的上传与显示

2017-03-30 15:14 253 查看
spring boot 图片上传后的图片读取路径在win与linux环境配置的差别
Windows:

import org.springframework.context.annotation.Configuration;
import org.springframework.util.ResourceUtils;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;

/**
*
* @author Hacker
* @date 2017-03-23 08:17:24
* @copyright  云南宣瑞农业科技开发有限公司
* @home https://my.oschina.net/sunhacker * @email dayi_lu@163.com
* @qq 471769165
* @phone 18987408181
*/
@EnableWebMvc
@Configuration
public class WebConfig extends WebMvcConfigurerAdapter {

@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {

registry.addResourceHandler("/templates/**").addResourceLocations(ResourceUtils.CLASSPATH_URL_PREFIX+"/templates/");
registry.addResourceHandler("/static/**").addResourceLocations(ResourceUtils.CLASSPATH_URL_PREFIX+"/static/");
registry.addResourceHandler("/upload/**").addResourceLocations("file:///D:/WebFies/uploaded/"");
super.addResourceHandlers(registry);
}

}

Mac 下:

import org.springframework.context.annotation.Configuration;
import org.springframework.util.ResourceUtils;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;

/**
*
* @author Hacker
* @date 2017-03-23 08:17:24
* @copyright  云南宣瑞农业科技开发有限公司
* @home https://my.oschina.net/sunhacker * @email dayi_lu@163.com
* @qq 471769165
* @phone 18987408181
*/
@EnableWebMvc
@Configuration
public class WebConfig extends WebMvcConfigurerAdapter {

@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {

registry.addResourceHandler("/templates/**").addResourceLocations(ResourceUtils.CLASSPATH_URL_PREFIX+"/templates/");
registry.addResourceHandler("/static/**").addResourceLocations(ResourceUtils.CLASSPATH_URL_PREFIX+"/static/");
registry.addResourceHandler("/upload/**").addResourceLocations("file:///Users/hackersun/WebFiles/upload/");
super.addResourceHandlers(registry);
}

}

后台代码:

@RequestMapping(value = "/single", produces = "application/json; charset=utf-8")
public String single(@RequestParam(value = "file", required = true) MultipartFile file,@RequestParam(value = "path",required = false,defaultValue = "common")String pathinfo) {
if (!file.isEmpty()) {
String success = "";
try {
String rootpath = "/Users/hackersun/WebFiles";
String filepath = "/upload/"+pathinfo+"/" + DateTools.getDateYYMMDD() + "/";
String fileOriginalName = file.getOriginalFilename();
String newfilename = DateTools.getCurDateTimeStr() + fileOriginalName.substring(fileOriginalName.lastIndexOf("."));
File newfile = new File(rootpath+filepath+newfilename);
FileUtil.makeDirectory(newfile);
//文件写入磁盘
file.transferTo(newfile);
success = filepath + newfilename;
} catch (FileNotFoundException e) {
e.printStackTrace();
return "{\"msg\":\"上传失败,文件处理异常,稍后重试\",\"state\":\"failed\"}";
} catch (IOException e) {
e.printStackTrace();
return "{\"msg\":\"上传失败,文件处理异常,稍后重试\",\"state\":\"failed\"}";
}
return success;
} else {
return "{\"msg\":\"上传失败,文件为空\",\"state\":\"failed\"}";
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: