如何从Java Servlet中的URL读取参数

时间:2018-11-27 19:47:41

标签: java servlets

我尝试通过以下方式从url中读取参数 http://localhost:8080/nameOfmyProject/nameOfMyServlet?query=bla

我的doGet方法中的代码是

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

 String query = request.getParameter("query");

 response.setContentType("text/html");
 PrintWriter out = response.getWriter();

 out.println("<html>");
 out.println("the parameter is " + query);
 out.println("</html>");
 out.close();

它建立得很好,但我的状态为404。 有人可以告诉我我做错了什么吗? 预先感谢!

2 个答案:

答案 0 :(得分:0)

request.getParameter("query")  会在html表单中查找称为query的输入字段。如果您想从url中获取path变量,您可以像这样

  String pathInfo = request.getPathInfo(); // query=bla
    String[] pathParts = pathInfo.split("=");
    String part1 = pathParts[1]; // query
    String part2 = pathParts[2]; //bla

答案 1 :(得分:0)

我找到了解决方案: 启动tomcat服务器时出现问题。 catalina.sh不知何故没有执行权限。我通过以下方式在cmd中进行了更改: 1.我通过 ls -l <​​/ strong>检查了权限 2.我通过 chmod + x catalina.sh

更改了权限

,现在可以正常使用了。谢谢大家!