一个Servlet提出请求,而我们想知道这个请求是谁请求、端口、上下文环境、路径等信息,可以对这些信息作比较,再进行下一步的处理。
# Z* N0 \- c/ G3 w1 ~
5 L0 B2 H8 x1 ?5 t4 h, t' N package org.ajava.example.servlet;; N& I/ R3 _- z$ }/ {, ?/ s2 f
; o9 f9 A: M1 ^
import java.io.IOException;
9 ?- V0 o8 z b1 ~2 \; u% d! f/ x 5 B1 p0 `9 z2 v j8 P
import javax.servlet.Servlet;
- v5 {. P+ a2 R4 H/ q 4 S" c0 h, ^4 B( c& c! L) o
import javax.servlet.ServletException;
- T, i; G$ v, D" R# ?! V6 l
' y. D7 p5 x( a; R6 q2 r. e" n) h/ S+ z import javax.servlet.http.HttpServlet;: G! G5 y0 t, o' \" ^9 u% o5 f% C
, F" y1 R/ @- ~
import javax.servlet.http.HttpServletRequest;) C' u9 O0 ~8 g1 O! K4 x, A
/ ^9 w% X, ^+ R, u7 L1 ]2 A, L
import javax.servlet.http.HttpServletResponse;
. y. X' [) N) p u. O 2 o r; y" V* \9 b# E8 {: \
public class ServletUrlInformation extends HttpServlet implements Servlet {
% G: `8 ~% T; G# P/ V. { D3 K * B( P) M% b. [. s
protected void doGet(HttpServletRequest request,
* V2 h; Z1 ]$ r- m1 K
7 h, j$ [9 ^& m+ y$ O HttpServletResponse response) throws ServletException, IOException {
: ^. @: ?: l6 I. V. Z
; N& H4 x- p& C4 }: z& k doPost(request, response);( i: v0 w; z" V5 Y1 [/ e
- m4 F' n8 w1 z$ ?# ~" X' J }
8 o7 w, k; d+ g% R9 D) n' t: U , R, T1 C- R0 y. _2 k
protected void doPost(HttpServletRequest request,$ H( v$ V0 y8 k' x: @
( ?- [# Q) `3 p3 A. k+ J/ l HttpServletResponse response) throws ServletException, IOException {
) y3 x! ?$ u0 c# E8 ^& p 3 U9 P$ }8 _5 q/ M1 ?! d! S
String url = request.getRequestURL()。toString();//取得请求的URL
/ B% V* w* S+ G* V8 K, P
& L( Z) L" ^8 i- i9 K: c: ?9 \4 @# s String queryString = request.getQueryString();//取得请求字符串* d& r& e$ I1 S/ C' w
6 |/ `+ d9 B3 ^; D& b! G
String uri = request.getRequestURI();//取得请求URI1 [: A8 J; B9 t7 j4 y' |( n
d0 S [% x' |7 h% c+ f( b& l String scheme = request.getScheme();( o" E3 Z" [* y& A! o7 X. \$ F
d+ |. K, i8 Z2 N$ h( W A String serverName = request.getServerName();//服务名( G. j" n4 p9 s& f4 Z! P1 ]. M6 z" a# v
) t& M" \, t$ F* O
int portNumber = request.getServerPort();//端口
( @/ A0 v/ |6 D( }8 @, e/ X1 [0 u* t
7 S5 d" Q9 K6 T9 {/ Z String contextPath = request.getContextPath();//上下文环境
6 ~, I/ I @1 F) M+ b/ u 1 u1 a1 `! c. J
String servletPath = request.getServletPath();//路径- \4 G5 G+ g- z0 m: Z7 `* ]* U
) D* y7 D" N( s+ w6 Z9 g+ @ String pathInfo = request.getPathInfo();//路径信息
0 l, r2 G- Z! K
1 |3 d" `* m( U String query = request.getQueryString();3 N7 ~2 S3 @" x. Z" x6 k, b
% o& D9 s/ D. `2 S0 s
}% C; f4 L+ F- c5 W( N- X+ c. d2 d s
6 G2 X4 b- f1 ^8 ?! N7 ~) E9 L } |