使用request.getContextPath()可以获得上下文资源, 那么什么是上下文资源? 使用上下文资源有什么作用?
2018-01-16 08:46
483 查看
获取当前项目根地址
优点: 它的作用是取出部署应用程序的名字,这样不管如何部署,所用的路径都是正确的缺点:其他工具无法正确解析它什么是当前的项目名称呢?
假定你的web application 名称为test,这个test就是当前的项目名称,不过你在浏览器中输入请求路径时,如:
http//:localhost:8080/test/hello.jsp
${pageContext.request.contextPath}或<%request.getContextPath%>就是从这个请求路径(URL)上截取(是截取)----> /test 看清楚,前面是有"/",而这个“/”代表的是-->"http//:localhost:8080",看清楚这里是没有"/"的!
所以才有了网上那些文章写的,如果我们:
<form action="${pageContext.request.contextPath}/hello.jsp">这样写路径永远对,当然对了,因为你自己翻译${pageContext.request.contextPath}/hello.jsp其中的含义,不就是
http//:localhost:8080/test/hello.jsp 相当于你写了一全路径!当然前提是你的JSP页面等等必须放置的位置正确才可以---->所以才说明路径永远正确
为什么这么要做呢?因为学过一些MVC模式的程序员都知道,JSP的作用是用来显示的(表现的),其他的作用最好不要在这个页面上显示,尤其是Java代码!所以就用EL表达式来替代类似有“<%%>”这样的代码格式
比如你现在的URL是192.1.1.1:8080/my/index.jsp tomcat配置的当前项目访问地址是192.1.1.1:8080/my request.getContextPath()得到的就是192.1.1.1:8080/my
上下文就是服务器上的一个路径,这个路径是存在服务器内存中的,你可以下路径中添加信息,然后根据路径和键值去找这个信息。
优点: 它的作用是取出部署应用程序的名字,这样不管如何部署,所用的路径都是正确的缺点:其他工具无法正确解析它什么是当前的项目名称呢?
假定你的web application 名称为test,这个test就是当前的项目名称,不过你在浏览器中输入请求路径时,如:
http//:localhost:8080/test/hello.jsp
${pageContext.request.contextPath}或<%request.getContextPath%>就是从这个请求路径(URL)上截取(是截取)----> /test 看清楚,前面是有"/",而这个“/”代表的是-->"http//:localhost:8080",看清楚这里是没有"/"的!
所以才有了网上那些文章写的,如果我们:
<form action="${pageContext.request.contextPath}/hello.jsp">这样写路径永远对,当然对了,因为你自己翻译${pageContext.request.contextPath}/hello.jsp其中的含义,不就是
http//:localhost:8080/test/hello.jsp 相当于你写了一全路径!当然前提是你的JSP页面等等必须放置的位置正确才可以---->所以才说明路径永远正确
为什么这么要做呢?因为学过一些MVC模式的程序员都知道,JSP的作用是用来显示的(表现的),其他的作用最好不要在这个页面上显示,尤其是Java代码!所以就用EL表达式来替代类似有“<%%>”这样的代码格式
相关文章推荐
- 无法使用request.getContextPath()解决办法
- request.getContextPath()获取的是什么路径?
- 使用request.getContextPath()设置Cookie路径问题
- android 开发中使用ids资源文件有什么作用
- request.getContextPath()使用
- request.getContextPath()使用方法
- 二十六、使用${pageContext.request.contextPath}指定js资源包、以及经由web.xml指定.action等的理解
- request.getRealPath不推荐使用
- 该如何正确的使用position属性 它的作用是什么?
- ava下Class.forName的作用是什么,为什么要使用它
- java下Class.forName的作用是什么,为什么要使用它
- Params的作用是什么?如何使用?
- ${pageContext.request.contextPath}的作用
- java下Class.forName的作用是什么,为什么要使用它
- ${pageContext.request.contextPath}的作用
- ${pageContext.request.contextPath}的作用
- C# return单独使用时起什么作用
- request.getContextPath(),绝对路径,request.getRealPath
- java下Class.forName的作用是什么,为什么要使用它(转载)