SpringMVC 업로드 이미지를 서버에 저장하고 이미지 이름을 변경하여 데이터베이스에 저장

/*** 사진 파일 업로드 */
@RequestMapping(value = "/save.do", method = RequestMethod.POST)
public String saveDriver(
         @RequestParam(value = "photo", required = false) MultipartFile filedata,
         Driver driver, Model model) {
         trimDriver(driver);
         model.addAttribute(driver);
         //  2M
         if (filedata.getSize() > Constant.UPLOAD_PHOTO_SIZE) {
             model.addAttribute("isSaveSuccess", false);
             IMessage msg = new Message("MSG_YS030_002", MsgTypeEnum.INFO, null);
             model.addAttribute("msg", msg.toString());
             return "ys030/YS033";
         }
         //  
         if (this.ys030Service.isExist(driver.getOrganizationId(),
                 driver.getIdCardNumber(), null)) {
             model.addAttribute("isSaveSuccess", false);
             IMessage msg = new Message("ERR_YS030_003", MsgTypeEnum.ERROR, null);
             model.addAttribute("msg", msg.toString());
             return "ys030/YS033";
         }
         //    
         if (filedata != null && !filedata.isEmpty()) {
             //  
             String fileName = filedata.getOriginalFilename();
             //  
             String extensionName = fileName
                     .substring(fileName.lastIndexOf(".") + 1);
             //   =  +"." 
             String newFileName = String.valueOf(System.currentTimeMillis())
                     + "." + extensionName;

        try {
            driver.setPicUrl(newFileName);
            saveFile(newFileName, filedata);

        } catch (Exception e) {
            log.error(" .", e);
            model.addAttribute("isSaveSuccess", false);
            IMessage msg = new Message("MSG_YS030_001", MsgTypeEnum.INFO,
                    null);
            model.addAttribute("msg", msg.toString());
            return "ys030/YS033";
        }
    }
    this.ys030Service.save(driver);
    model.addAttribute(driver);
    model.addAttribute("isSaveSuccess", true);
    return "ys030/YS033";
}

/*** * 기능 설명 이미지 저장 * @param newFileName * 사진 파일 이름 업로드 * @param filedata * 파일 데이터 * */
private void saveFile(String newFileName, MultipartFile filedata) {
    // TODO Auto-generated method stub
    //  
    String picDir = "";
    try {
    //   
        Properties properties = PropertiesUtil
                .getProperties("configure/driverpicurl.properties");
        picDir = properties.getProperty("savePicUrl");
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    String saveFilePath = picDir;

/*   */
File fileDir = new File(saveFilePath);
if (!fileDir.exists()) {
    fileDir.mkdirs();
}

try {
    FileOutputStream out = new FileOutputStream(saveFilePath + "\\"
            + newFileName);
    //  
    out.write(filedata.getBytes());
    out.flush();
    out.close();
} catch (Exception e) {
    e.printStackTrace();
}
}

/*** 기능 설명: 그림 삭제 * @param oldPicName * 이전 파일 이름 수정 */
 private void deleteFile(String oldPicName) {
// TODO Auto-generated method stub
String picDir = "";
try {
    Properties properties = PropertiesUtil
            .getProperties("configure/driverpicurl.properties");
    picDir = properties.getProperty("savePicUrl");
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
/*   */
File fileDir = new File(picDir+"/"+oldPicName);
if (fileDir.exists()) {
    //   
    fileDir.delete();
}
}

이것은 properties 파일 #=======================================================================================================================================================================================http://xxx.xxx.xx.xxx:8080/driverPic/서버 이미지 획득 주소 #============================================================================================= savePicUrl=D:/tomcat/apache-tomcat -7.0.39/webapps/driverPic getPicUrl=http://xxx.xxx.xx.xxx:8080/driverPic/

좋은 웹페이지 즐겨찾기