如何在java中读取Servlet中的URL和Print

时间:2016-08-12 09:37:13

标签: java servlets

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    response.getWriter().append("Served at: ").append(request.getRequestURL());
    System.out.println("Received Value: "+request.getRequestURL());
    Utils.getDataFromFeedbackLink(request.getContextPath());        
    response.setContentType("text/html"); 
    PrintWriter pw=response.getWriter();      
    pw.println("<html><body>");  
    pw.println("Welcome to servlet"+request.getRequestURL());  
    pw.println("</body></html>");   
    pw.close();  

}

的web.xml

 <servlet>
    <servlet-name>SubmitFeedbackServlet</servlet-name>
    <display-name>SubmitFeedbackServlet</display-name>
    <description></description>
    <servlet-class>com.techjini.tfs.servlets.SubmitFeedbackServlet</servlet-class>
  </servlet>
      <servlet-mapping>
        <servlet-name>SubmitFeedbackServlet</servlet-name>
        <url-pattern>/submitfeedback</url-pattern>
      </servlet-mapping>

这是我的servlet get方法代码: 我想打印任何请求URL的内容,如http://localhost:8080/TechJiniFeedbackSystem/submitfeedback/Hello servlet

然后这个URL应该在我的Consle中打印我使用了getContextPath和getRequestURL,但没有使用这些打印http://localhost:8080/TechJiniFeedbackSystem/submitfeedback/Hello servlet

请建议我在哪里做错了或建议我解决这个问题。

1 个答案:

答案 0 :(得分:1)

令人难以置信的简单:您必须在doGet方法的Servlet中使用 HttpServletRequest 中的 getRequestURL

或者您可以使用以下方法获取更多信息:getServletPath(),getContextPath等。

在规范中阅读更多内容: https://docs.oracle.com/cd/E17802_01/products/products/servlet/2.5/docs/servlet-2_5-mr2/javax/servlet/http/HttpServletRequestWrapper.html#getRequestURL()