【问题标题】:difference between out.println("<html>Hello World</html>") and out.println("Hello World")out.println("<html>Hello World</html>") 和 out.println("Hello World") 的区别
【发布时间】:2015-11-15 17:53:21
【问题描述】:

我对 HTML 了解不多。我刚刚开始学习 servlet 和 JSP。但是,为什么我们要在 Servlet 或 JSP 中放置 HTML 标记,因为它给出的结果与放在 out.println() 中的结果相同。如果您无法理解我的问题,out.println("&lt;html&gt;Hello World&lt;/html&gt;") 和 out.println("Hello World") 有什么区别?运行 servlet 时,两者都提供相同的输出。

【问题讨论】:

  • 应该是&lt;html&gt;&lt;body&gt;hello world&lt;/body&gt;&lt;/html&gt;
  • 如果你刚开始,我建议不要直接使用 servlet;它们太低级了,无法做大量工作。看看 Spring MVC,它支持 JSP 和其他几个模板系统(包括 Thymeleaf,这是我的偏好)。

标签: java html jsp servlets


【解决方案1】:

区别在于您返回的文档类型。

 out.println("Hello World")

打印纯文本,并且

out.println("<html>Hello World</html>")

返回一个 HTML 文档。由客户端的网络浏览器决定如何显示它 - 我希望两者都呈现相同的内容。

【讨论】:

    【解决方案2】:

    在打开源代码窗口之前,您看不到差异。

    out.println("Hello World")
    

    正在使用text/plain content-type 属性,但如果您使用html标签,则应设置text/html。

    在获取用于输出的任何对象(Stream 或Writer)之前,在ServletResponse 上使用setContentType 方法,例如:

    response.setContentType("text/html;charset=utf-8");
    

    如果您使用Writer,Servlet 会自动处理从 Java 字符串到所选编码的转换。

    【讨论】:

      【解决方案3】:

      不使用html特殊命令时没有区别,但如果你喜欢不同字体、颜色和大小的文本,也许还有超链接,那么使用html标签。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-07-24
        • 2012-01-04
        • 2014-10-15
        • 2023-04-11
        • 1970-01-01
        • 1970-01-01
        • 2011-09-12
        • 2012-09-07
        相关资源
        最近更新 更多