【问题标题】:JspWriter write versus printJspWriter 写入与打印
【发布时间】:2010-10-04 07:23:55
【问题描述】:

我正在开发一些自定义 JSP 标记。在我的SimpleTag.doTag() 中,我获取JspContext 并调用getOut() 以获取JspWriter。写信给JspWriter时,write(String)print(String)有什么区别?我应该打电话给一个而不是另一个吗?

【问题讨论】:

    标签: java jsp jsp-tags


    【解决方案1】:

    print() 方法可以缓冲,write() 方法是从 Writer 类继承的,不能 - 所以你可以从 JspWriter 的 print() 方法中获得更好的性能。

    此外,print() 方法被重载以将许多不同类型的对象作为参数,而 write 方法只处理字符串和字符。

    有关详细信息,请参阅JspWriter javadocs

    【讨论】:

    • 所以听起来 print 是首选方法。
    • 取决于你想做什么,但在大多数情况下我会说是的 - 它专门用于 JSP,而不是你需要使用的通用 Writer 抽象类利用多态性。
    【解决方案2】:

    来自 javadoc:

    'write' 函数继承自 java.io.writer 。

    'print' 函数:如果参数为 null,则打印“null”。否则,字符串的字符将被写入 JspWriter 的缓冲区,或者,如果没有使用缓冲区,则直接写入底层写入器。

    【讨论】:

      猜你喜欢
      • 2016-10-02
      • 2020-01-18
      • 1970-01-01
      • 1970-01-01
      • 2023-03-20
      • 1970-01-01
      • 2021-09-23
      • 2011-05-04
      • 2017-08-18
      相关资源
      最近更新 更多