java servlet 重复帖子

标签 java servlets repeat

我想让 java servlet 根据输入做出类似 while-do 条件的东西。假设我让它连续接收名为 UserInput 的输入并发布名为 ProgramOutput 的输出,就像与程序聊天一样。这是我的 doPost 代码:

        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    PrintWriter out=response.getWriter();
    String UserInput= request.getParameter("UserInput").toString();

    out.println("<html>");
    out.println("<head>");
    out.println("<title></title>");
    out.println("</head>");
    out.println("<body>");
    while (true){
    out.println(UserInput+ "<br>"); //this is the place where user type his/her words
    out.println("<input type='submit' value='submit'>");
    request.getParameter("UserInput").toString();
        if ("stop".equals(UserInput)) //unless user type 'stop', program will keep printing the answer
        break;
    String ProgramOutput= engine.answer(UserInput); //from engine.java
    out.println(ProgramOutput+"<br>");}
    out.println("</body>");
    out.println("</html>");
    out.close();

当我尝试运行它时,它从未停止打印相同的输入和输出,甚至没有让用户输入其他单词并检查它。我应该怎么办?

抱歉,这是我第一次制作servlet,如果可能的话我想要一个易于理解的答案。提前致谢。

最佳答案

您在同一代码中混合了 VIEW 和 CONTROLLER。这不是一个好方法。 理想情况下,您应该有一个 jsp (VIEW) 用于提供用户输入,并在提交该页面时调用 servlet(CONTROLLER),该 servlet 将处理请求并将控制返回给 jsp,以便用户可以提供输入。

建议您阅读MVC框架。

关于java servlet 重复帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13706060/

相关文章:

java - JS和Java中相同图像的不同Base64字符串

java - 使用 url 模式过滤映射 servlet **

CSS背景重复问题

Android 重复任务不起作用

java - 读取 excel 文件时出现 Apache POI NoClassDefFoundError

java - 如何访问匿名内部actionListener类和actionPerformed方法中的局部变量?

带有 tomcat 和 cxf-servlet 的 spring-boot

javascript - 创建重复表单部分,删除字段值

java - 了解 Stream API ForEach Task 中的主循环

java - 关于调试 Hadoop MapReduce 作业中二级排序问题的任何提示?