Nik*_*ack -2 eclipse tomcat servlets jakarta-ee
我是学习 Java Servlet 的新手。我正在尝试使用生成两个输入字段“用户名”和“全名”的简单 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);
}
Run Code Online (Sandbox Code Playgroud)
\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>");
Run Code Online (Sandbox Code Playgroud)
或者
out.println("Hello from POST method!");
out.println("<br />Your UserName is: " + User_name);
Run Code Online (Sandbox Code Playgroud)
也不建议像这样直接在 servlet 中打印 HTML。您应该设置请求属性并转发到充当视图的 JSP。这在Servlets 信息页面中有很好的解释。
只是对未来的提示:在更改服务器上的某些内容(保存到 db 或其他任何内容)的帖子之后,您将需要进行服务器端重定向以防止重复发布。
| 归档时间: |
|
| 查看次数: |
13305 次 |
| 最近记录: |