Site icon Datorn reparationsinformation

Hur får man en URL i en servlet

I programmeringsspråket Java , är en servlet en klass som används för att förlänga en server förmåga som man kommer till ett värdprogram . Detta är vanligtvis utförs av en begäran-svar programmeringsmodell. HTTP-specifika servlets ge doGet och doPost metoder för att hantera dessa tjänster . Komma eller använt den begärande URL i en servlet sker via användning av vissa Java förfrågningar . Följande URL antas i stegen nedan : http://hostname. com/mywebapp/servlet/MyServlet/a/b , c=123 d=789 ? .
1
Använd ServletRequest. getRequestURL () :

public static String getURL ( HttpServletRequest req ) {

String reqUrl=req. getRequestURL ( ) toString ( ) ; .

String QueryString=req. getQueryString ( ) , //d=789

om ( QueryString=null ! ) {

reqUrl +=+ QueryString ” ? ” ;

}

återvända reqUrl ;

}

Den här metoden returnerar allt utom frågesträngen . .
2
Använd ServletRequest. getRequestURI () om du inte behöver värdnamnet :

public static String getURL ( . HttpServletRequest req ) {

String reqUri=req. getRequestURI ( ) toString ( ) ;

String QueryString=req. getQueryString () ; //d=789

om ( QueryString=null ! ) {

reqUri +=+ QueryString ” ? ” ;

}

återvända reqUri ;

}
3
att konstruera URL från grunden , använder du följande : .

public static String getURL ( HttpServletRequest req ) {

String systemet=req . getScheme ( ) ; //http

String servernamn=req. getServerName () ; //hostname. com

int serverPort=req. getServerPort () ; //80

String contextPath=req. getContextPath ( ) ; ///mywebapp

String servletPath=req. getServletPath ( ) ; ///servlet /MyServlet

String pathInfo=req. getPathInfo ( ) ; ///a /b , c=123

String QueryString=req. getQueryString () ; //d=789

//Rekonstruera ursprungligen gjort begäran URL

String url=ordning +”://”+ servernamn +”:”+ serverPort + contextPath + servletPath , om ( pathInfo=null ! ) {

url +=pathInfo ;

}

if ( QueryString=null ! ) {

url +=+ QueryString ” ? ” ;

}

återvända url ;

}

Exit mobile version