java获得tomcat项目的绝对地址

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+request.getContextPath()+"/";

basePath : http://localhost:8080/test/

getRequestURI,getRequestURL的区别

test1.jsp=======================

<a href ="test.jsp?p=fuck">跳转到test2</a>

test2.jsp=======================

<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

out.println("basePath:"+basePath); out.println("<br/>"); out.println("getContextPath:"+request.getContextPath()); out.println("<br/>"); out.println("getServletPath:"+request.getServletPath()); out.println("<br/>"); out.println("getRequestURI:"+request.getRequestURI()); out.println("<br/>"); out.println("getRequestURL:"+request.getRequestURL()); out.println("<br/>"); out.println("getRealPath:"+request.getRealPath("/")); out.println("<br/>"); out.println("getServletContext().getRealPath:"+getServletContext().getRealPath("/")); out.println("<br/>"); out.println("getQueryString:"+request.getQueryString());

%>

显示结果:

显示结果:

basePath:http://localhost:8080/test/

getContextPath:/test

getServletPath:/test.jsp

getRequestURI:/test/test.jsp

getRequestURL:http://localhost:8080/test/test.jsp

getRealPath:D:\Tomcat 6.0\webapps\test\

getServletContext().getRealPath:D:\Tomcat 6.0\webapps\test\

getQueryString:p=fuck

在一些应用中,未登录用户请求了必须登录的资源时,提示用户登录,此时要记住用户访问的当前页面的URL,当他登录成功后根据记住的URL跳回用户最后访问的页面:

String lastAccessUrl = request.getRequestURL() + "?" + request.getQueryString();

最新文章

  1. android中的事件传递和处理机制
  2. iOS 学习笔记 十 (2015.04.03)xcode第三方插件
  3. Google的Guava工具类splitter和apache stringutil对比 编辑
  4. BZOJ 1977 次小生成树(最近公共祖先)
  5. [转载]启用 VIM 中的 Python 自动补全及提示功能
  6. 有关信息ACM/ICPC竞争环境GCC/G++叠插件研究记录的扩展
  7. linux的用户,群组和其他用户
  8. 转 如何使用JEE6快速开发简单的webservice
  9. Recurrent Neural Network系列2--利用Python,Theano实现RNN
  10. 镜像的缓存特性 - 每天5分钟玩转 Docker 容器技术(14)
  11. php索引数组转成关联数组
  12. spring web.xml配置
  13. 腾讯AI开放平台的使用
  14. alfs学习笔记-安装和使用blfs工具
  15. es6(二)
  16. JVM异常之:堆溢出OutofMemoryError
  17. Android 如何预置APK M
  18. php封装数据库函数
  19. Android :64位支持的说明
  20. C#中遍历各类数据集合的方法总结

热门文章

  1. 关于linux服务器的批量维护、批量升级、
  2. Union all的用法实例sql
  3. hdu 4619 Warm up 2
  4. 河流 tyvj1506
  5. 如何获取google可以访问的IP地址
  6. for循环和while循环的区别
  7. SharePoint开发 - 使用Session(代码修改webconfig)
  8. c# Winforms WebBrowser - Clear all cookies
  9. 《day14---多线程入门_进阶》
  10. HDU 3333 - Turing Tree (树状数组+离线处理+哈希+贪心)