ファイルシステムのspring mvcに画像をアップロードしたいと思います。私はそれを行うことができますが、プロジェクトを再デプロイすると、すべてのイメージはディレクトリから削除されます。今私の質問は永久にイメージをアップロードする方法ですか?私は実際のアプリケーションでこれをしたいです。春mvcの画像を他の場所に永久にアップロード
答えて
おそらく、あなたのプロジェクトのディレクトリ/ warの下にあなたの画像をアップロードしました。プロジェクト/戦争を展開/構築するたびに、画像が削除されます。
あなたのプロジェクト/戦争の外に画像ファイルを保存する必要があります。
実際のアプリケーションでは、アップロードした画像を別のサーバーに保存/配信することをおすすめします。 Amazon S3はかなり良いものです。データベースにS3ベースのURLに関連したオブジェクト/ファイル名を保存するだけです。彼らはあなたにもファイルをアップロードするためのJava APIを持っています。
前述のように、アップロードされたこれらの画像を保持するには、プロジェクト/ .WARファイルの外に保存することをお勧めします。この理由は既に経験したことですが、アプリケーションを再デプロイするたびに、展開された前のプロジェクト/ .WARに書き込まれたもの(アップロードされた画像)が失われます。
これらの画像を保存するためにAmazon S3バケットを利用することで提供されるソリューションは良い解決策であり、あなたが望むものを確実に達成することができます(www.example.com/upload/にこれらの画像をすべて表示します)。あなたのコントローラ内のspringMVCを使用すると、メソッドを設定することができますので、同じよう@RequestMappingアノテーションを割り当てる:
は@Controller
@RequestMapping("/") //this can map to your www.example.com
public class MainController(){
@RequestMapping("/upload") //this will then map to www.example.com/upload
public String showUploads(){
return "redirect:http://pathToAmazonS3Bucket"
}
}
SpringMVCでリダイレクトを使用すると、絶対URLパスにリダイレクトすることができます。 See docs
しかし、既に述べたように、あなたのプロジェクトパス/ WARファイルの外にイメージを保存する必要があります。 Amazon S3は機能しますが、ここで別の解決策を求めてからです。
すべてのイメージをPC上のファイルに保存してから、Python3またはNodeをHTTPサーバーとして実行できます。この解決策では、あなたのコンピュータとあなたのインターネット接続を利用して、あなたのイメージをウェブ上でホストする必要があります。これはあなたのPCをノンストップで走らせておくこと、または古いものをあなたのウェブサーバーとして使用することに慣れさせていることを前提としています。また、あなたのISPがあなたのネットワーク上のWebサーバーをホストしていることを前提としています。最後に、オンラインで多数のサービス(一部は無料で、一部は手数料が少ない)から独自のユニークなURLを取得することができます。この方法では、IPアドレスを入力する必要はありません。
No-IP.comのフリードメイン名を使用して、上記のネットワーク上で同様の設定を行っています。
また、ウェブでSpring Webアプリケーションをどのようにホストする予定ですか?あなたはオンラインホスティングサービスを介してこれをやっているのか、あなた自身をホストしていますか?あなた自身をホストしている場合は、Apache TomcatまたはGlassfishまたは別のコンテナ/アプリケーションサーバーを使用しますか?
- 1. 画像をアップロードするための画像をギャラリーにアップロードする場所
- 2. 画像に永久に動画アイコンを設定する方法
- 3. 永久にListViewに画像を取り込みますか?
- 4. ImageIO.read(URL)は画像を永久にロードします
- 5. ajax MVCで画像をアップロード
- 6. 一時的なデータを春のMVCに格納する場所
- 7. アップロードされた画像と移動場所の保存
- 8. 永久に$ ionicLoadingローディング
- 9. コレクションビューで画像を永久保存する
- 10. ASP.Net MVC 2画像アップロード
- 11. は永久にMatLabの
- 12. 春のブート永続的なファイルのアップロード
- 13. 画像アップロードEF、MVC、JQueryでアップロード
- 14. 永久に公開されたmvcアプリケーションのロード
- 15. アップロード複数の画像+ ASP.NET MVCのテキストフィールド
- 16. 永久
- 17. 永久
- 18. ノードスクリプトを永久に実行
- 19. パースアンドロイドは、永久に移動したエラーで画像をダウンロードできません
- 20. 春のMVC:。。。セキュリティ設定requireSecure()恒久的に301
- 21. OpenFileDialogを使用して画像をアップロードし、元の場所から別の場所に画像を移動/カットする
- 22. カメラの画像の場所を確認
- 23. Javaの永久スイッチ
- 24. 複数の画像を1つのオブジェクトにアップロードするASP.NET MVC
- 25. 複数の画像を他のパラメータとともにアップロードする
- 26. アップロードする他のデータとともにPOST画像をPHPファイルにアップロードする
- 27. html5 canvas永久に消去
- 28. 複数の画像をアップロードする前にプレビュー画像をアップロード
- 29. Windows Phone - 画像の場所を取得
- 30. のアップロード画像の他の形式のデータに
あなたの答えに感謝します。これに対して他の解決策はありませんか?私はこのようにしたい、私のアドレスは 'www.example.com'だと思うので、私はこの' www.example.com/upload/'のようなディレクトリを持ち、そこにアップロードされたすべてのイメージを保存したい。 – ali