eclipse - 网页上的新行 - Java servlet

标签 eclipse tomcat jakarta-ee servlets

我刚开始学习 Java Servlet。我正在尝试使用生成两个输入字段“UserName”和“FullName”的简单 html 表单通过 POST 查询(Apache Tomcat v8.0)传递参数。 然而,代码运行完美;我希望 'UserName' 和 'FullName' 显示在单独的新行上,但我无法通过在 println() 函数中使用“/n”来实现。 这是我的 POST 查询代码。

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    response.setContentType("text/html");
    PrintWriter out= response.getWriter();
    String User_name = request.getParameter("UserName");
    String Full_name = request.getParameter("FullName");
    out.println("\nHello from POST method!");
    out.println("\nYour UserName is: " +User_name);
    out.println("\nYour FullName is: " +Full_name);
}

最佳答案

\n是文本的换行符。在浏览器中查看源代码,您将看到 \n在 HTML 源代码中给你一个换行符。问题是,浏览器不显示 \n作为呈现的 HTML 中的换行符。这是因为要在 HTML 中换行,您可以使用 <br />用于换行,或将您的行换行到以 <p> 开头的段落中并以 </p> 结尾.如果您打算进行 JSP/Servlet 开发,则需要学习 HTML 的基础知识。

所以:

 out.println("<p>Hello from POST method!</p>"); 
 out.println("<p>Your UserName is: " + User_name + "</p>"); 

 out.println("Hello from POST method!"); 
 out.println("<br />Your UserName is: " + User_name); 

也不推荐像这样在servlet中直接打印HTML。您应该设置一个请求属性并转发到充当 View 的 JSP。这在 Servlets info page 中有很好的解释。 .

只是对 future 的提示:在服务器上更改了某些内容(保存到数据库或其他)后,您将需要进行服务器端重定向以防止重复发布。

关于eclipse - 网页上的新行 - Java servlet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27301462/

相关文章:

java - 无法获取公共(public)无参数构造函数

java - --launcher.XXMaxPermSize 在 eclipse.ini 中出现两次

java - DBCP 池使用相同的连接?

java - 从 servlet 运行繁重的 cmd 进程

java - Neo4j Wildfly OGM 。在本地单元测试中工作正常,但在部署后因资源异常而失败

eclipse - Hibernate3 Maven 插件的生命周期问题

java - 如何在特定文件的基础上禁用 Eclipse 中的编译器警告?

web-applications - 有没有一种简单的方法来监视 tomcat Web 应用程序中的 session ?

java - JPA/Hibernate 嵌入式 ID

java - 为什么多个 RXJava Observables 没有发生并行执行?