我在 web 文件夹下有我的图像。完整路径为“web/images/logo1.jpg”。我的 jsp 页面位于 web/WEB-INF/jsp。如何正确查看我的图像?
3 回答
在指定图像路径时,我们有两个选项:提供绝对路径或相对路径。假设您有一个 webapp ROOT,即所有代码都在 webapps/ROOT 中(ROOT 是 TOMCAT 中的默认 webapp,即 webapps/ROOT/first.html 中的文件可以在浏览器上使用http://example.com:8080/first访问.html。)
或者,如果您有一个 webapp 示例;然后可以使用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 )
您已经传递了项目的相对 url,您可以使用 getContextRoot() 传递,如下所示:
/images/logo1.jpg"/>
为什么你的jsp在WEB-INF目录下?有点奇怪?我通常对我的 jsp 文件使用 /web/jsp 之类的东西。WEB-INF 应该专门用于 web.xml 和此类 .. 至少我是这么认为的 :)
无论如何,Web 根目录中的任何内容都可以作为 /foldername/file.ext 访问
在你的情况下,你应该能够使用
<img src="/images/logo1.jpg" />