博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【web JSP basePath】basePath的含义
阅读量:6289 次
发布时间:2019-06-22

本文共 1256 字,大约阅读时间需要 4 分钟。

 

 

问题1:WEB-INF的问题

今天新创建项目,在JSP中引入外部的JS文件和CSS文件,但是路径一直显示错误:

其中JSP页面引入这几个文件是这么写的:

1  
2 3 4
View Code

文件是这么放的:

 

 

解决问题:

这样就能发现,咱们把CSS和js文件夹放在了WEB-INF目录下,所以,就算访问的路径是对的,也访问不到资源。

修改,将这两个文件夹放在webapp目录下即可。

 如下图:

 

 

webapp目录就相当于是web项目的根目录【页面的】

而WEB-INF目录,则相当于web项目的秘密仓库,只能服务器【servlet/controller】访问它下面的文件。除此之外,是访问不到它下面的文件的。所以,这个错误就容易理解了

 

 

 问题2:basePath的问题以及<base>标签

出现上面的无法访问的问题,我就把盯上了每个JSP页面生成时都会自动生成的一段代码:

1 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> 2 <% 3 String path = request.getContextPath(); 4 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 5 %> 6  7  8  9   10     11     12     showRoleInfo page
View Code

这里面出现的

path变量:

basePath变量:

以及 

<base href="<%=basePath%>">标签:

 

 

在本页面输出如下:

 

1  1、request.getContextPath()=<%=request.getContextPath() %>
2 2、request.getScheme()=<%=request.getScheme() %>
3 3、request.getServerName()=<%=request.getServerName() %>
4 4、request.getServerPort()=<%=request.getServerPort() %>
5 5、basePath=<%=basePath %>
View Code

 

我们看一下页面的显示结果,就知道上边的变量分别代表的意思:

使用了base标签,则代表本页所有的超链接,如果不指定的话,那默认的连接位置就是http://localhost:8080/mySecond,如此而已。

所以,刚开始的问题,是否<base>标签影响了引入css以及js文件的位置?答案是否定的

转载于:https://www.cnblogs.com/sxdcgaq8080/p/5627734.html

你可能感兴趣的文章
阿里感悟(十八)- 应届生Review
查看>>
话说模式匹配(5) for表达式中的模式匹配
查看>>
《锋利的SQL(第2版)》——1.7 常用函数
查看>>
jquery中hover()的用法。简单粗暴
查看>>
线程管理(六)等待线程的终结
查看>>
spring boot集成mongodb最简单版
查看>>
DELL EqualLogic PS存储数据恢复全过程整理
查看>>
《Node.js入门经典》一2.3 安装模块
查看>>
《Java 开发从入门到精通》—— 2.5 技术解惑
查看>>
Linux 性能诊断 perf使用指南
查看>>
实操分享:看看小白我如何第一次搭建阿里云windows服务器(Tomcat+Mysql)
查看>>
Sphinx 配置文件说明
查看>>
数据结构实践——顺序表应用
查看>>
python2.7 之centos7 安装 pip, Scrapy
查看>>
机智云开源框架初始化顺序
查看>>
Spark修炼之道(进阶篇)——Spark入门到精通:第五节 Spark编程模型(二)
查看>>
一线架构师实践指南:云时代下双活零切换的七大关键点
查看>>
ART世界探险(19) - 优化编译器的编译流程
查看>>
玩转Edas应用部署
查看>>
music-音符与常用记号
查看>>