[英]understanding out.println in servlets
在 Servlets 中, out.println
如何將 html 文本寫入容器的響應對象,通常在System.out.println()
,它將文本寫入控制台??
這在概念上給我帶來了問題。
PrintStream
和PrintWriter
都不是在控制台方面指定的。
PrintStream 向另一個輸出流添加功能,即方便地打印各種數據值的表示的能力。 打印流
將對象的格式化表示打印到文本輸出流。 印刷機
它們都是關於格式化數據並將格式化數據傳遞到輸出流。 任何輸出流。 默認情況下,在某些環境中,最初由System.out
和System.err
引用的PrintStream
對象將它們的數據發送到某種控制台,但這只是那些特定實例。
甚至這些都可以改變。 例如,在某些類型的測試中用PrintStream
替換System.out
可能很有用,該PrintStream
將其數據發送到ByteArrayOutputStream
。
它使用來自 Javadoc 的ServletOutputStream
,
提供用於向客戶端發送二進制數據的輸出流。 通常通過
ServletResponse.getOutputStream()
方法檢索ServletOutputStream
對象。
如果您查看System.out
您會發現它是一個PrintStream
,它是OutputStream
的不同實現。
如果在 servlet 中的某個地方調用out.println(...)
寫入響應對象,則out
必須是對響應對象的OutputStream
的引用,或者包裝流和它。 如果System.out
將輸出發送到其他地方(通常會這樣做),則它是對不同OutputStream
的引用。
名為out
的 servlet 方法(或任何其他方法的)局部變量與System.out
完全無關,除非您將一個初始化為對另一個的引用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.