SSM文件上传封装工具类

SSM项目中文件上传controller层中文件上传代码重复过多,将其封装成工具类,方便以后的使用。

resource.properties

NOTICE_IMAGE_DIR=E:/upload/notice/
NOTICE_IMAGE_URL=http://localhost:8080/upload/notice/

Utils:

public static String fileUpload(MultipartFile file,String DIR,String URL){
        String oldFileName = file.getOriginalFilename();
        String extName = oldFileName.substring(oldFileName.lastIndexOf("."));
        String newFileName = System.currentTimeMillis()+extName;
        try {
            FileUtils.copyInputStreamToFile(file.getInputStream(),new File(DIR,newFileName));
            return "{\"error\":0,\"url\":\"" + URL + newFileName + "\"}";
        } catch (IOException e) {
            e.printStackTrace();
            return "{\"error\":1}";
        }
    }
controller:

//文件上传
    @Value("${NOTICE_IMAGE_DIR}")
    private String NOTICE_IMAGE_DIR;
    @Value("${NOTICE_IMAGE_URL}")
    private String NOTICE_IMAGE_URL;
    @RequestMapping(params = "act=upload")
    @ResponseBody
    public String upload(MultipartFile file){
        return JsonUtils.fileUpload(file,NOTICE_IMAGE_DIR,NOTICE_IMAGE_URL);
    }


你可能感兴趣的:(SSM)