tomcat再起動アップロードファイルの消失を解決する

4302 ワード

開発モデル
  • まず開発者モードで、Tomcatに配備するには良い方法はありません.そうしないとデバッグできません.
  • 絶対パスを使用しない限り、欠点:異なるオペレーティングシステムパスが異なり、
  • が自動的に設定される.
  • 画像のアップロードについて一般的に私たちは画像サーバーを使って、CDNの中の
  • をアップロードします
  • が一般的に取得する経路はすべてrequest.getSession().getServletContext().getRealPath("/upload/" + filename)
  • である.
    配置モード
  • もちろん実行中にTomcatを設定してアップロードファイル
  • に達することができます.
  • 考え方:
  • /tomcat/webapps/ディレクトリ項目ファイル
  • をクリア
  • 修正/tomcat/conf/web.xmlファイル
  • <servlet>
      <servlet-name>defaultservlet-name> <servlet-class>org.apache.catalina.servlets.DefaultServletservlet-class> <init-param> <param-name>debugparam-name> <param-value>0param-value> init-param> <init-param> <param-name>listingsparam-name> <param-value>trueparam-value> init-param> <load-on-startup>1load-on-startup> servlet>

  • 修正/tomcat/conf/server.xmlファイル
  • <Host name="localhost" appBase="webapps" uppackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">  <Valve vlassName="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/> <context docBase="D:\project\myProject\…\WebRoot" path="/"> Host>


  • 原理:
  • D:\project\myProject\...\WebRootこのパスはプロジェクトのWEBルートディレクトリで、設定後にアップロードするとuploadフォルダの下にファイル
  • がアップロードされます.
  • eclipseでポイントを押した配置項目は、元の項目を/tomcat/webapps/ディレクトリにコピーすることに等しい.キャッシュを再配置またはクリアすれば、アップロードされたファイルは消えてしまう.
  • 再配置は、元のプロジェクトのディレクトリ
  • を削除します.

    転載先:https://www.cnblogs.com/whymoney1000/p/10758887.html