⑴ Java中JavaBean的作用范圍:request和page的區別是什麼啊
JavaBean在WEB編程中一直被當作模型層對象來使用,不存在作用范圍的說法,它是MVC模式的M,使用JavaBean存放數據可以有效的避免頻繁的將數據存入或取出某個作用范圍。
例如:當我們需要將用戶的注冊信息通過請求轉發傳遞到新的頁面,如果不使用JavaBean我們就得頻繁的將用戶屬性保存到request對象中,在下一個頁面又需要一個一個從request對象中取出,這樣做相當麻煩,使用JavaBean將用戶屬性全部封裝在一個User對象中我們就可以只存取request對象一次就可以了。
JavaBean早期出現在Java的圖形界面編程中(Swing),這也是Java最早開始使用MVC模式,在圖形界面Swing編程中的JavaBean有四大屬性(根據需要,不必同時存在),而現在WEB編程中我們只需要考慮其中的Simple屬性和Index屬性就可以了。
page內置對象是Object類的一個實例,它是處理當前請求的JSP頁面實現類的實例。page對象在頁面的正文中可以被比作是this關鍵字,它的作用范圍僅限於當前page頁面。實際開發過程中使用較少。
request內置對象是HttpServletRequest對象的一個實例,代表了一個客戶端請求,當用戶向伺服器發送請求(不論是點擊鏈接還是提交表單),哪怕該請求在伺服器上被轉發N次,都是一個請求,直到伺服器最終發送相應為止,這都是該request對象的生命周期。
例如:在JSP + Servlet + JavaBean的開發中,經常使用Servlet接收請求,將數據保存到JavaBean中,然後將JavaBean保存到request對象,再通過請求轉發到負責顯示的JSP頁面,最終通過標簽將JavaBean中保存的數據顯示在JSP頁面內。