如何“自定义” Servlet的相对URL

时间:2019-08-08 14:42:49

标签: servlets url-pattern

我有一个Servlet / JSP应用程序。 我试图显示每个Servlet的自定义URL:

例如,我有一个servlet“ First_step”,可以完成一些工作,显示的URL是

http://localhost:8080/App/Fisrt_step 

如何更改为显示http://localhost:8080/App/home

1 个答案:

答案 0 :(得分:1)

取决于您的Web配置。您使用的是servlet 2.5还是3.1?如果仍在使用2.5,则可以在WEB-INF内的web.xml文件中更改servlet URL映射:

您当前的映射看起来像这样*假设您的servlet类名称也是“ FisrtStepServlet”(FisrtStepServlet.class):

  <servlet>
    <display-name>FisrtStepServlet</display-name>
    <servlet-name>FisrtStepServlet</servlet-name>
    <servlet-class>yourpackage.FisrtStepServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>FisrtStepServlet</servlet-name>
    <url-pattern>/Fisrt_step </url-pattern>
    <url-pattern>/alternativeURL</url-pattern>
  </servlet-mapping>

如果您使用的是3.1,则可以使用注释更改servlet的url映射。

@WebServlet("/Fisrt_step ") //here you change the servlet URL
public class FisrtStepServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;

    public FisrtStepServlet() {
        super();
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    //whatever here

    }
}