2017-06-17 16 views
0

私は、ユーザーがいくつかの情報とイメージを入力できるアプリケーションを持っているので、データベースにイメージを保存しましたが、アプリケーションをデプロイする。だから私はファイルシステムに画像を保存したい、私はそれをアプリケーションに保存すべきではないことを読んだので、ファイルシステムの外部フォルダに保存したい。私はフォルダE:/ imagesでそれらを選択します。うまくいきました。私の質問は、プロダクションアプリケーションで画像を保存するためにできることです(E:/ imagesはありません)。アプリケーションをデプロイするサーバー上にフォルダを作成するにはどうしたらいいですか? (E:/ images)。私はSpring MVCを使用しています。 ここに私のコントローラ:ファイルシステム上のフォルダにユーザーのイメージを保存するSpring MVC

@RequestMapping(value="/save",method=RequestMethod.POST) 
    public String add (@RequestParam("prix") Long prix, 
      RequestParam("adresse") String ville, 
      @RequestParam("categorie") String categorie, 
      @RequestParam("photos") MultipartFile file, 
      ) throws FileNotFoundException 


{ 

    String chemin=null; 
    if (!file.isEmpty()) 
    { 
     try { 
     String orgName = file.getOriginalFilename(); 
     // this line to retreive just file name 
     String 
     name=orgName.substring(orgName.lastIndexOf("\\")+1,orgName.length()); 
     chemin="e:\\images\\"+name; 
     File file1=new File(chemin); 
     file.transferTo(file1); 
     } catch (IOException e) { 
            e.printStackTrace(); 
            } 

    } 
    annonce.setImage(chemin); 
    annonce.setTitre(prix); 
    annonce.setCorps(ville); 
    annonce.setPrix(cetegorie) 
    annoncedao.save(annonce); 
    return "SuccessAddAnnonce"; 
} 

答えて

0

クラスパスにsomename.propertyファイルを追加します。

ここで、プロパティファイルのbeanを以下のように作成します。今お使いのコントローラで

<bean id="projectProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean"> 
    <property name="locations"> 
     <list> 
      <value>classpath*:somename.properties</value> 
     </list> 
    </property> 
</bean> 

は、Beanを追加します。

chemin=projectPropertiesProperties.getProperty("imagepath")+name; 
0

は、コード内でハードコードされたファイルパスのために行ってはいけません。プロパティファイルを使用して、プロダクションチームに渡します。だから、実稼働環境にアプリケーションをデプロイするときはいつでも、プロパティファイルで、ファイルを保存するファイルパスを変更するだけです。

+0

が実際にそれは私の個人的なアプリケーションです:

@Resource(name="projectProperties") private Properties projectProperties; 

は今、あなたの行を変更します。それを行う方法の例がありますか? –

+0

新しい回答を確認する –

関連する問題