## org.springframework.web.servlet.support
Class ServletUriComponentsBuilder

    java.lang.Object
      org.springframework.web.util.UriComponentsBuilder
          org.springframework.web.servlet.support.ServletUriComponentsBuilder

    public class ServletUriComponentsBuilder

extends UriComponentsBuilder

A UriComponentsBuilder that extracts information from an HttpServletRequest.

Since:
  3.1
Author:
  Rossen Stoyanchev

Constructor Summary
`protected` `ServletUriComponentsBuilder()` Default constructor.

Method Summary
`static ServletUriComponentsBuilder` `fromContextPath(HttpServletRequest request)` Prepare a builder from the host, port, scheme, and context path of an HttpServletRequest.
`static ServletUriComponentsBuilder` `fromCurrentContextPath()` Same as `fromContextPath(HttpServletRequest)` except the request is obtained through `RequestContextHolder`.
`static ServletUriComponentsBuilder` `fromCurrentRequest()` Same as `fromRequest(HttpServletRequest)` except the request is obtained through `RequestContextHolder`.
`static ServletUriComponentsBuilder` `fromCurrentRequestUri()` Same as `fromRequestUri(HttpServletRequest)` except the request is obtained through `RequestContextHolder`.
`static ServletUriComponentsBuilder` `fromCurrentServletMapping()` Same as `fromServletMapping(HttpServletRequest)` except the request is obtained through `RequestContextHolder`.
`static ServletUriComponentsBuilder` `fromRequest(HttpServletRequest request)` Prepare a builder by copying the scheme, host, port, path, and query string of an HttpServletRequest.
`static ServletUriComponentsBuilder` `fromRequestUri(HttpServletRequest request)` Prepare a builder from the host, port, scheme, and path of an HttpSevletRequest.
`static ServletUriComponentsBuilder` `fromServletMapping(HttpServletRequest request)` Prepare a builder from the host, port, scheme, context path, and servlet mapping of an HttpServletRequest.

Methods inherited from class org.springframework.web.util.UriComponentsBuilder
`build, build, buildAndExpand, buildAndExpand, fragment, fromHttpUrl, fromPath, fromUri, fromUriString, host, newInstance, path, pathSegment, port, query, queryParam, replacePath, replaceQuery, replaceQueryParam, scheme, schemeSpecificPart, uri, userInfo`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ServletUriComponentsBuilder

    protected ServletUriComponentsBuilder()

  Default constructor. Protected to prevent direct instantiation.

  See Also:
    `fromContextPath(HttpServletRequest)`, `fromServletMapping(HttpServletRequest)`, `fromRequest(HttpServletRequest)`, `fromCurrentContextPath()`, `fromCurrentServletMapping()`, `fromCurrentRequest()`

Method Detail

### fromContextPath

    public static ServletUriComponentsBuilder fromContextPath(HttpServletRequest request)

  Prepare a builder from the host, port, scheme, and context path of an HttpServletRequest.

### fromServletMapping

    public static ServletUriComponentsBuilder fromServletMapping(HttpServletRequest request)

  Prepare a builder from the host, port, scheme, context path, and servlet mapping of an HttpServletRequest. The results may vary depending on the type of servlet mapping used.

  If the servlet is mapped by name, e.g. `"/main/*"`, the path will end with "/main". If the servlet is mapped otherwise, e.g. `"/"` or `"*.do"`, the result will be the same as if calling `fromContextPath(HttpServletRequest)`.

### fromRequestUri

    public static ServletUriComponentsBuilder fromRequestUri(HttpServletRequest request)

  Prepare a builder from the host, port, scheme, and path of an HttpSevletRequest.

### fromRequest

    public static ServletUriComponentsBuilder fromRequest(HttpServletRequest request)

  Prepare a builder by copying the scheme, host, port, path, and query string of an HttpServletRequest.

### fromCurrentContextPath

    public static ServletUriComponentsBuilder fromCurrentContextPath()

  Same as `fromContextPath(HttpServletRequest)` except the request is obtained through `RequestContextHolder`.

### fromCurrentServletMapping

    public static ServletUriComponentsBuilder fromCurrentServletMapping()

  Same as `fromServletMapping(HttpServletRequest)` except the request is obtained through `RequestContextHolder`.

### fromCurrentRequestUri

    public static ServletUriComponentsBuilder fromCurrentRequestUri()

  Same as `fromRequestUri(HttpServletRequest)` except the request is obtained through `RequestContextHolder`.

### fromCurrentRequest

    public static ServletUriComponentsBuilder fromCurrentRequest()

  Same as `fromRequest(HttpServletRequest)` except the request is obtained through `RequestContextHolder`.