Java中获取请求地址的详细方法及步骤是怎样的?
- 后端开发
- 2025-09-26
- 5
在Java中,获取请求地址有多种方法,具体取决于你是在Servlet中、Spring MVC中还是JSP页面中,以下是详细的方法和步骤:
Servlet中获取请求地址
在Servlet中,你可以通过以下几种方式获取请求地址:

| 方法 | 描述 |
|---|---|
| HttpServletRequest.getRequestURL() | 返回请求的URL。 |
| HttpServletRequest.getRequestURI() | 返回请求的URI。 |
| HttpServletRequest.getContextPath() | 返回Web应用的上下文路径。 |
| HttpServletRequest.getServletPath() | 返回请求的Servlet路径。 |
以下是一个简单的示例:
public class MyServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String requestURL = request.getRequestURL().toString(); String requestURI = request.getRequestURI(); String contextPath = request.getContextPath(); String servletPath = request.getServletPath(); System.out.println("Request URL: " + requestURL); System.out.println("Request URI: " + requestURI); System.out.println("Context Path: " + contextPath); System.out.println("Servlet Path: " + servletPath); } }
Spring MVC中获取请求地址
在Spring MVC中,你可以使用以下方式获取请求地址:
| 方法 | 描述 |
|---|---|
| ModelAndView.getRequestUrl() | 返回请求的URL。 |
| ModelAndView.getRequestURI() | 返回请求的URI。 |
| ModelAndView.getContextPath() | 返回Web应用的上下文路径。 |
以下是一个简单的示例:

@Controller public class MyController { @RequestMapping("/myPage") public ModelAndView myPage() { ModelAndView modelAndView = new ModelAndView("myPage"); modelAndView.addObject("requestURL", modelAndView.getRequestUrl()); modelAndView.addObject("requestURI", modelAndView.getRequestURI()); modelAndView.addObject("contextPath", modelAndView.getContextPath()); return modelAndView; } }
JSP页面中获取请求地址
在JSP页面中,你可以使用EL表达式和JSP标签来获取请求地址:
| 方法 | 描述 |
|---|---|
| request.getContextPath() | 返回Web应用的上下文路径。 |
| request.getRequestURI() | 返回请求的URI。 |
| request.getRequestURL() | 返回请求的URL。 |
以下是一个简单的示例:

<%@ page contentType="text/html;charset=UTF8" language="java" %> <html> <head>Request Address</title> </head> <body> <h1>Request Address</h1> <p>Context Path: ${request.contextPath}</p> <p>Request URI: ${request.requestURI}</p> <p>Request URL: ${request.requestURL}</p> </body> </html>
FAQs
Q1: 如何在Servlet中获取完整的请求URL?
A1: 在Servlet中,你可以使用HttpServletRequest.getRequestURL()方法获取完整的请求URL。
Q2: 如何在Spring MVC中获取请求的URI?
A2: 在Spring MVC中,你可以使用ModelAndView.getRequestURI()方法获取请求的URI。