Servletによるファイルアクセス方法とは?

このQ&Aのポイント
  • Servletを使用して、不定期に生成されるImageXX.jpgファイルの最新のファイルにアクセスする方法を教えてください。
  • WEBサーバー上のフォルダAには、規則的にImageXX.jpgという名前のファイルが作成されます。サーブレットから最新のファイルにアクセスするためにはどうすればよいですか?
  • Servletを使って、WEBサーバー上にあるフォルダAに不定期に生成されるImageXX.jpgファイルの最新のファイルにアクセスする方法を教えてください。
回答を見る
  • ベストアンサー

Servletによるファイルアクセス

いま、Servletによるサーバーサイドの勉強をしているのですが ちょっと詰まってしまったので、質問させてください。 WEBサーバー上にあるフォルダAには、不定期にImage01.jpg、Image02.jpgといった具合に ImageXX.jpgという規則的なファイルが作成されていきます。 そのImageXX.jpgの、一番新しいファイルにアクセスしてWEB上に表示をしたいのですが、 (要するに、一番新しいファイルにアクセスしたいのですが) どのようにしてサーブレットからそのファイルを指定すればいいのでしょうか? 分かりにくい質問ですみません。 もし分かる方がいらっしゃいましたら、よろしくお願いしますm(__)m

  • Java
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
noname#30871
noname#30871
回答No.1

(1) あるディレクトリ内に存在するファイルの一覧を得る  → java.io.File#listFiles() (2) あるファイルの最終更新日付を得る  → java.io.File#lastModified() ではどうでしょうか。

参考URL:
http://java.sun.com/j2se/1.4/ja/docs/ja/api/index.html
deodar
質問者

お礼

(1)のjava.io.File#listFiles()でファイルの一覧を取得して、 (2)のjava.io.File#lastModified()で、最終更新日付を得て if文かなにかで、一番新しいファイルを探し出す。 といった方法でやってみます。 返答、どうもありがとうございましたm(__)m

deodar
質問者

補足

締め切りもうチョイ待つので、他にもこんな方法があるよ。 って知ってる方いましたら教えてください、お願いします。

関連するQ&A

  • servletが動きません

    windows2000SP4 tomocat3.3.1 sdk1.4.0 作業用フォルダのサーブレットが動きません。 コンパイルは出来ます。 http://localhost:8080/examples/servlet/HelloWorldExample このようにtomocatの例のサーブレットは動きますが http://localhost:8080/javaworks/servlet/HelloWorldExample 自分の作業用フォルダにいれると動きません HTTP 404 ファイル未検出 というエラーが出てしまいます よく分からないので、どなたか教えて下さい。

    • ベストアンサー
    • Java
  • Servlet/JSPのアクセス制限

    Apache 2.2.x + Tomcat 5.5.xでサーバをたてています。 そこに、とあるサーブレット、ないしはJSPのファイルがあるとします。  www.somewhere.com/apps/servlet_or_jsp これを、通常は、同一サイト内にあるhtmlファイルのフォームから呼び出しています。  www.somewhere.com/foo.html   <form action="apps/servlet_or_jsp" ...> ここで、別サイトにあるhtmlファイルのフォームから、上記のファイルを呼び出そうとしてみます。  www.somewhereelse.com/bar.html   <form action="www.somewhere.com/apps/servlet_or_jsp" ...> すると、件のファイルを実行できてしまうのですが、これを外部サイトから実行できないようにするにはどうすれば良いのでしょうか? もしかしたら、とてつもなくくだらないことなのかもしれませんが、入門書を見たりWebで検索してみても答えが見つからなかったので、質問させてください。

  • java servlet tomcat エラー

    サーブレット用のクラスファイルがwebページ (http://localhost:8080/examples/servlet/HelloWorldServlet) で見ることができないんですがなんででしょうか? http://localhost:8080にはアクセスできるからtomcatは正常に起動してるんですが。 ちなみにファイル HelloWorldServlet.class はtomcat 6.0\webapps\examples\WEB-INF\classesに保存してあります。 エラー内容は下記のようになっています。 ーーーーーーーーーーーーーーーーーーーーーーーーーーー HTTPステータス 404 - /examples/servlet/HelloWorldServlet type ステータスレポート メッセージ /examples/servlet/HelloWorldServlet 説明 The requested resource (/examples/servlet/HelloWorldServlet) is not available. ーーーーーーーーーーーーーーーーーーーーーーーーーーー

  • WEBサーバー上の一部フォルダーにFTPでアクセス出来ない

    ホームページの更新を引き継いだので、FTPでファイルをアップデートしようとしたところ、更新・削除・名前の変更いずれもできない(アクセス不可)のフォルダがあります。 そのフォルダにはイメージファイル等が入っているはずなのに中身も見えず、データ量も0となっています(フォルダ名は表示される)。しかし、IEでアクセスするとファイルはサーバに保存されているようです。 アクセスできるフォルダもありますし、HPの許容量も余裕があります。 サーバーサイドのフォルダにアクセス拒否とかの指定ができるようになっているのでしょうか? 至急ファイルを更新したいのですが、前任者とも連絡が取れないので困っています。 よろしくお願いします。

  • ファイルサーバ上にあるAccessが開けません

    初めて質問させて頂きます。 Windows server2003で、ファイルサーバ上にあるAccessファイルを開けなくて困っています。 Windows server2003をWebサーバに設定をしているところです。 作成したWebサイトから、ファイルサーバ上にあるAccessのデータを見たいのですが、 「ファイル '\\Nas3\users\DB.mdb' を開くことができませんでした。ほかのユーザーが排他的に開いているか、データを読み取る権限がありません。」 とエラーが出てしまいます。 原因を調査していたら、そもそもWindows serverから該当のAccessファイルを開けないことがわかりました。 ファイルサーバ上のAccessを開こうとすると、以下のエラーが出てしまいます。 「指定されたデバイス、パス、またはファイルにアクセスできません。 アクセス許可がない可能性があります。」 開けないのは、Accessファイルのみで、ファイルサーバ上にあるExcel等の他のファイルは開けますし、編集もできます。 Windows server上にAccessファイルをコピーすると開くことができますが、 作成したWebサイトから開こうとすると、テーブルのリンクが貼ってあるためか、上記のエラーになってしまいます。 Accessは2000を使用しています。 インターネット等で2日間くらい調べていますが、どうしたらいいのかわかりません。 どなたかご教授お願いします。

  • 【Servlet】ユーザに意識させずにファイルを指定ディレクトリへダウンロード

    こんにちは。 Servletを使って、ユーザが特定ページにアクセスしたときに、 ユーザが意識しない内に、サーブレット内で作成したPDFファイルを特定のディレクトリにダウンロードさせたいのですが方法がわからず困っております。 アドバイスよろしくお願いいたします。

    • ベストアンサー
    • Java
  • サーブレットファイル 404

    OS はWindows 8で、JDK 6 、Tomcat 6です。 今朝からサーブレットやjspのリンクを叩いても 「 ~を開くことが出来ません。インターネットサイトのレポートによるとリクエストしたアイテムが見つかりませんでした。(HTTP/1.0 404) 」 としか出なくなりました。昨日までは表示されていたんですが・・・ http://localhost:8080/で左上に猫のロゴがあるページは表示されます。 例としてSample1.javaがありますが、 アドレスはhttp://localhost:8080/自分のフォルダ/servlet/Sample1で このサーブレットファイルはC:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\自分のフォルダ\WEB-INF\classesにあります。  web.xml(C:\Users\自分の名前\Desktop\プログラム\Java基本\java_prc\YJK_ish\WEB-INFの直下に有) を確認しても <servlet> <servlet-name>Sample1</servlet-name> <servlet-class>Sample1</servlet-class> </servlet> <servlet-mapping> <servlet-name>Sample1</servlet-name> <url-pattern>/servlet/Sample1</url-pattern> </servlet-mapping> と入っています。 一応8080でバッティングさせないようにPHPで使う方のApache のサーバーもhttpd -k stopで止めておきました。 考えられる原因は何でしょうか? 他に確かめる方法は無いのでしょうか?

    • ベストアンサー
    • Java
  • ファイルにアクセスのイベントログをとりたい

    windows server2008でどのファイルにアクセスのイベントログをとりたい、aファイルのreadとか、グループポリシーのセキュリティ監査でオブジェクト監査を指定し、参照されるフォルダに監査項目を指定しているが、アクセスされたファイル名等が出力されない。

  • Servletでセキュアなダウンロードをする方法

    WWWサーバに個人情報が含まれた.abcという拡張子の ファイルを、JavaServletで認証したユーザだけに ダウンロードしてもらいたいのですが、 WWWサーバのドキュメントルート配下へファイルを置くとURLを直接指定すると見えてしまいます。 URLを直接指定しても見えないディレクトリに ファイルを置き、.abcはMIME/TIPEで指定されたアプリケーションで開く又はダウンロードしてもらう といった事を行いたいのですが、イメージに近いServletのソースはどこかにあるでしょうか? また、以下の方法は実現可能で安全でしょうか? 1.ダウンロードボタンを押すと ランダムにユニークとなるファイル名で 拡張子.abcを非公開ディレクトリに作成 2.headerでContentTypeやfilenameを指定し、 ダウンロードしてもらう。 3.ダウンロードファイルをなんらかの方法で消す

    • ベストアンサー
    • Java
  • servlet (resin) について

    tomcatとresinって、そんなに違うのですか? resinでプログラムを動かしたいのですが、動いてくれません… tomcatの場合、webappsの下に自分の好きなディレクトリを作れば(test)その中のWEB-INF/classes にクラスファイル(TEST.class)を置けば、  http://localhost:8080/test/servlet/TEST で動きますが、resinも同じようにしようと思って、test/WEB-INF/classes/の下にTEST.java を置いて(コンパイルしてくれると聞いたのでJAVAファイルを置きました) http://localhost:8080/test/servlet/TEST を見ても、/test/servlet/TEST was not found on this server. と怒られました… どうすればいいのでしょう??