av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

Java 是否應該在HttpServletResponse.getOutputStream()/getWriter()上調用.close()?

瀏覽:131日期:2024-05-08 13:34:08
(adsbygoogle = window.adsbygoogle || []).push({}); 如何解決Java 是否應該在HttpServletResponse.getOutputStream()/getWriter()上調用.close()??

通常,你不應該關閉流。在Servlet完成作為Servlet請求生命周期的一部分運行之后,Servlet容器將自動關閉流。

例如,如果你關閉流,那么在實現Filter的情況下將不可用。

說了這么多,只要你關閉它,只要你不嘗試再次使用它,都不會發生任何不良情況。

編輯:另一個篩選器鏈接

EDIT2:adrian.tarau是正確的,因為如果你想在Servlet完成其操作后更改響應,則應創建一個擴展HttpServletResponseWrapper的包裝器并緩沖輸出。這是為了防止輸出直接進入客戶端,還允許你保護servlet是否關閉流,如以下摘錄(強調我的話):

修改響應的過濾器通常必須 在將響應返回給客戶端之前捕獲該響應。實現此目的的方法是將生成響應的servlet傳遞給替代流。替身流阻止servlet在完成時關閉原始響應流,并允許過濾器修改servlet的響應。

解決方法

我無法通過一些Google搜索找到權威的答案。在Java Servlet中,可以通過response.getOutputStream()或response.getWriter()訪問響應主體。寫入流后,是否應該在此流上調用.close()?

一方面,Blochian鼓勵始終關閉輸出流。另一方面,我不認為在這種情況下有需要關閉的基礎資源。套接字的打開/關閉在HTTP級別進行管理,以允許諸如持久連接之類的事情。

標簽: java
相關文章:
主站蜘蛛池模板: 夜夜av | 欧美日韩精品 | 久久性av | 亚洲精品在线看 | 欧美jizzhd精品欧美巨大免费 | 久久99精品久久久久婷婷 | 欧美日韩精品一区 | 国产欧美一区二区三区久久手机版 | 亚洲国产aⅴ成人精品无吗 欧美激情欧美激情在线五月 | 日韩一级免费电影 | 精品91久久 | 超碰人人91| 精品在线观看入口 | 亚洲一区二区三区四区五区中文 | 成人夜晚看av | 久草青青草 | 九九综合| 91九色麻豆 | 99精品免费视频 | 精品成人一区 | 亚洲码欧美码一区二区三区 | 色婷婷九月 | 亚洲人成人一区二区在线观看 | 日韩欧美久久 | 国产综合av | 亚洲成人av一区二区 | 亚洲免费高清 | 免费中文字幕 | 日韩一级免费看 | 黄色片视频免费 | 一区二区在线免费观看 | 在线播放中文字幕 | 国产精品高潮呻吟久久aⅴ码 | 成人在线观看网站 | 久久久精品视频免费看 | 91短视频网址 | 精品久久伊人 | 日本成人中文字幕 | 久久久久久久久国产成人免费 | 国产精品视频播放 | 国产精品久久久久久网站 |