私は自分の画像をWebフォルダの下に置いています。完全なパスは「web/images/logo1.jpg」です。私のjspページはweb/WEB-INF/jspにありました。画像を正しく表示するにはどうすればよいですか?
3 に答える
画像のパスを指定する際、2つのオプションがあります。絶対パスまたは相対パスを提供する。webapp ROOTがある、つまりすべてのコードがwebapps / ROOT内にあると仮定します(ROOTはTOMCATのデフォルトのwebappです。つまり、webapps / ROOT / first.html内のファイルは、http: //example.com:8080/firstを使用してブラウザーでアクセスできます。 .html。)
または、Webアプリケーションの例がある場合。次に、 http: //example.com:8080 / example/first.htmlを使用してwebapps/example/first.htmlにアクセスできます。
したがって、次のファイルがあると仮定しますwebapps / ROOT / jsp / first.jsp; およびwebapps/ROOT / images / logo1.jpg
logo1.jsp内では、次のようにjpgにアクセスできます。
<img src="/images/logo1.jpg" /> (absolute path; because it starts with a slash ; this slash is mapped to the starting directory)
<img src="../images/logo1.jpg" /> (relative path; because it DOES NOT starts with a slash ; you have to give path relative to location of your jsp )
次のように getContextRoot() を使用して渡すことができるプロジェクトの相対 URL を渡しました。
/images/logo1.jpg"/>
jspがWEB-INFディレクトリにあるのはなぜですか?ちょっと変?私は通常、jspファイルに/ web/jspのようなものを使用しています。WEB-INFはweb.xmlなどに専用にする必要があります。少なくとも私はそう思います:)
とにかく、Webルート内のすべてのものは/foldername/file.extとしてアクセスできます
あなたの場合、あなたは使用できるはずです
<img src="/images/logo1.jpg" />