亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

out對象方法

flush將緩沖區內容輸出到客戶端,這里的緩沖區是緩沖什么的?clear報錯,clearbuffer不報錯這是為什么?原理是什么

正在回答

4 回答

clearBuffer():該方法用于清除緩沖區里的數據,并且把數據寫到客戶端,在緩沖區的數據為空的時候,那么似乎也這個方法將會產生IOException錯誤。

?clear():該方法用于清除緩沖區里的數據,但不把數據寫到客戶端,在緩沖區的數據為空的時候,那么似乎也這個方法將會產生IOException錯誤,所以一般要使用try……catch……塊包住。


0 回復 有任何疑惑可以回復我~
#1

czd_123

clearBuffer不會把數據寫到客戶端
2016-11-03 回復 有任何疑惑可以回復我~

clear()是刪除這個方法前面的緩沖區,如果前面有一個flush()會和flush()方法沖突,又要刪除緩沖區內容又要輸出緩沖區內容,矛盾,而clearBuffer()是刪除flush()到clearBuffer()之間的緩沖區內容所以不會發送異常,因為之間要么有緩沖區內容要么null;

0 回復 有任何疑惑可以回復我~
<%out.println("窗前明月光</br>");?%>
<%out.println("疑是地上霜</br>");?%>
<%out.println("舉頭望明月</br>");?%>
<%out.println("低頭思故鄉</br>");?%>
<%out.flush();?%>
<%=out.getBufferSize()?%>
<%=out.getRemaining()?%>
<%out.println("窗前明月光</br>");?%>
<%out.println("疑是地上霜</br>");?%>
<%out.println("舉頭望明月</br>");?%>
<%out.println("低頭思故鄉</br>");?%>
<%out.clear();?%>
<%=out.getBufferSize()?%>
<%=out.getRemaining()?%>

這兩段代碼執行后,后者前面的詩句不輸出,但后面剩余緩沖區大小一樣。說明,flush就是輸出并清空緩沖區,clear直接清空緩沖區

0 回復 有任何疑惑可以回復我~
#1

我是大圖圖 提問者

但是clear和clearbuffer到底區別在那,為什么會一個有異常一個沒有。
2015-09-10 回復 有任何疑惑可以回復我~

不用flush也能顯示內容,難道每段輸出有個默認的flush?

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
JAVA遇見HTML——JSP篇
  • 參與學習       248278    人
  • 解答問題       3215    個

Java Web入門級教程JSP,帶你輕松的學習JSP基礎知識

進入課程

out對象方法

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號