2016-03-25 9 views
1

kullanarak karşıya yüklerken dosyayı yeniden adlandırın Kullanıcı arayüzünden bir resim yüklemem ve ihtiyacım gereği adını değiştirmem gerekiyor. Kullanıcı bir isim WIN_20151122_09_57_47_Pro.jpg bir görüntüyü yüklediğindeBaharda WebPartFileFile datype

yani ben MultiPartFile veri türü kullanıyorum ben Bahar mvc ve dosya yükleme için kullanıyorum ve görüntülemek am

1.jpg olarak değiştirmek zorunda kalacak

Model aşağıdadır.

FileBucket.java 

package com.faisal.model; 

import org.springframework.web.multipart.MultipartFile ; 

public class FileBucket { 

     MultipartFile file ; 

     public MultipartFile getFile() { 
      return file ; 
     } 

     public void setFile(MultipartFile file) { 
      this.file = file; 
     } 
} 

sunucuda dosya yükleyerek ediyorum kontrolör parçası

@Autowired 
     ServletContext servletContext; 

@RequestMapping(value = "/singleUpload" , method = RequestMethod.POST) 
     public String singleFileUpload(@Valid FileBucket fileBucket, 
        BindingResult result, ModelMap model) throws IOException { 

      String PROFILE_UPLOAD_LOCATION = servletContext.getRealPath("/") 
         + File. separator + "resources" + File.separator 
         + "profile_images" + File.separator; 

      if (result .hasErrors()) { 
        System. out.println("validation errors"); 
        return "singleFileUploader" ; 
      } else { 
        System. out.println("Fetching file"); 
        String destination=PROFILE_UPLOAD_LOCATION 
           + fileBucket.getFile().getOriginalFilename(); 

        File file = new File(destination); 
        File newFile=new File(PROFILE_UPLOAD_LOCATION +"1.jpg"); 


        FileCopyUtils. copy(fileBucket.getFile().getBytes(), file); 
        FileUtils. moveFile(file, newFile); 


        MultipartFile multipartFile = fileBucket .getFile(); 
        String fileName = multipartFile .getOriginalFilename(); 
        model.addAttribute("fileName" , fileName); 
        return "success" ; 
      } 
     } 

başarıyla dosyayı yeniden adlandırmış yukarıda ama sonra üzerinde yönlendirme yaparken kodunda Görünüm sayfa

<body> 
     <div class="success" > 

     <img src=" ${pageContext.request.contextPath}/resources/profile_images/${fileName} " height ="100" width="100" /> 
     <br/> 
      File <strong> ${fileName}</strong > uploaded successfully. 
     </div> 

</body> 

Aynı sayfa görüntü değiştirilmediği için görüntülenmediği için 1.jpg

+0

deneyin '' gibi bu '' uygulamaya nasıl. İşte [UserController] 'i nasıl uygularım (https://github.com/RawSanj/spring-tiles-sample-app/blob/master/src/main/java/com/sanjay/springtiles/controller/UserController.java) ve jsp view ' Kullanıcı Resmi

+0

işte daha basit bir şekilde: 1. sunucuya bir dosya yükleme (bu işlem tamamlandı) 2. dosyayı yüklemek ve sunucu tarafında daha uygun bir şekilde yeniden adlandırmak name (Bu şimdi başarmaya çalışıyorum) –

+0

@SanjayRawat bu benim sorunumu çözdü, kabul edebilmek için lütfen bir cevap yazınız. –

cevap

1

Tr y <spring:url> bunu beğendi. <img src='<spring:url value="/resources/profile-pictures/${user.profileImage}" />' >.

Burada UserController ve jsp görünümünde <img src='<spring:url value="/resources/profile-pictures/${user.profileImage}" />' alt="User Image">

+0

Aynı kod parçasının denetleyicinin bir bölümünde çalıştığı ve burada başka bir yerde çalışmadığı başka bir sorunla karşılaştım. Http://stackoverflow.com/questions/36250863/cannot-convert -değeri-of-tipi-java-lang-string-to-gerekli-tip-org-springfram –

İlgili konular