如果我有这样的事情:
<servlet>
<display-name>Step</display-name>
<servlet-name>Step</servlet-name>
<servlet-class>com.foo.AServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Step</servlet-name>
<url-pattern>/aservlet/*</url-pattern>
</servlet-mapping>
并且由/ aservlet / ABC
形式的请求调用servlet那么有没有办法在代码中获得值“ABC”?即在类AServlet的doGet()或doPost()方法内部?
答案 0 :(得分:4)
最简单的事情是,
String path = request.getPathInfo();
返回“/ ABC”。
答案 1 :(得分:1)
public void doGet(HttpServletRequest request, HttpServletResponse response){
String uriRequest = request.getRequestURI();
//parse to obtain only the last part
String uriRequest = uriRequest.substring(uriRequest.lastIndexOf("/")+1);
}
doPost()
也是如此。