回顧
Servlet中的“屬性”是保存在容器側的一段信息,它以Map的數據結構方式保存在內存中。根據作用域分成request級、session級、context級。Request級在應答完成后由容器自動刪除,session級屬性在同一會話都可見,而context級對于同一站點下的會話都可以操作。Session級屬性通過手刪除或會話超時也會給容器刪除,context級手工刪除或容器關閉釋放。為了保證屬性不要過多占用Web服務器內存,session級和context級用完后盡快手工釋放內存,故使用頻率request級->session級->context級。
屬性操作
無論何種作用域的屬性統一采用setAttribute()方法設定屬性,getAttribute()取得屬性,removeAttribute()刪除屬性。
設定
setAttribute()帶二個參數,第一個參數為String類型,第二個為屬性值為Object
取得
getAttribute()根據key來刪除屬性,key為String類型,返回Object類型
。
刪除
removeAttribute()帶一個參數為屬性的key,其類型為String
小結
利用屬性可以實現Servlet與Servlet、Servlet與Jsp、Jsp與Jsp之間的數據傳遞。在后繼的JSP學習也會涉及屬性的操作,而且JSP的屬性作用域比Servlet還多個page級,由此可見屬性在Web開發中的重要性。
今天就講到這邊,有任何問題歡迎聯系小傅老師。