深究jsp页面不能显示本地图片

有点想不明白在一个项目中为什么jsp上面不能显示本地的图片比如:D:\\123.jsp。只能显示相对路径里面的图片(最终在浏览器上面还是localhost:8080/ss... 有点想不明白在一个项目中为什么jsp上面不能显示本地的图片比如:D:\\123.jsp。只能显示相对路径里面的图片(最终在浏览器上面还是localhost:8080/ssss/xxx.jpg),或者是外链的图片。为什么在项目里面的jsp上面没法直接调用D:\\123.jpg ,为什么单个的html文件可以加载本地的图片呢?如果说是安全机制的问题,只能访问服务器根目录下面的东西,那上传文件怎么解释?仔细思考过这个问题的来回答。 展开
 我来答
civerse
推荐于2017-09-22
知道答主
回答量:5
采纳率:0%
帮助的人:3万
展开全部
jsp能访问到哪是有容器(tomcat或者weblogic等)控制的。应用服务不允许你访问本的的其他目录自然是访问不了(即使能访问也不会是“D:\\123.jpg”这种形式,jsp会先被转换成servlet(这个可以找本jsp的基础教程看看)提供服务,当页面访问jsp时实际上是jsp 所对应的servlet发送给浏览器的的html代码,而原jsp页面中的html是不会进行处理的,而直接发送给浏览器(客户端),你的链接中所说的“D:\\123.jpg”对应的是服务器上的“D:\\123.jpg”,而不是客户机器上的“D:\\123.jpg”。客户端上有没有“D:\\123.jpg”都还不一定呢,所以肯定不会显示。html是你本地的浏览器解析的,所以“D:\\123.jpg”只会去本地机器上找,而不回去服务器上找)。不知道这样说你名不明白了。 至于上传文件,接受文件的servlet是在服务器上运行的,所以可以找到服务器上的“D:\\***.***”,而且你肯定是在servlet中新建了io流,把上传过来的文件存到指定的地方,流是你自己定义的,已经超出了容器的控制,所以不存在权限的问题,即使有权限问题也不是容器限制你的,而是操作系统本身。
祝你学习顺利
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式