摘抄的:所謂上下文,它是用來存儲系統的一些初始化信息,例如在jboss中通過配置文件指定了數據源,那么在jboss啟動的時候就把這個文件的相關信息上下文中,於是在我們使用這個數據源的時候,就需要先獲得系統的上下文,然后再通過一定的方式將數據源取出來。至於在系統啟動時,是如何將這些初始化信息加載到上下文中,而上下文在程序中具體又是以什么形式體現的,應該隨着系統的不同而不同。
上下文即ServletContext,是一個全局的儲存信息的空間,服務器啟動,其就存在,服務器關閉,其才釋放。所有用戶共用一個ServletContext。所以,為了節省空間,提高效率,ServletContext中,要放必須的、重要的、所有用戶需要共享的線程又是安全的一些信息。如,做一個購物類的網站,要從數據庫中提取物品信息,如果用session保存這些物品信息,每個用戶都訪問一便數據庫,效率就太低了;所以要用來Servlet上下文來保存,在服務器開始時,就訪問數據庫,將物品信息存入Servlet上下文中,這樣,每個用戶只用從上下文中讀入物品信息就行了。
獲取ServletContext的方法:
HttpSession session = request.getSession();
session.getServletContext();
個人理解:上下文可以理解為工程的環境,那么這個環境信包含了一些配置信息 ,就比如:spring上下文,代表的是spring配置的環境信息,我們spring配置文件是applicationcontext.xml,application.xml就是spring的上下文,也就是讀取到這個上下文,就可以獲得spring的配置數據,總的來說上下文對應配置文件,因為配置文件是配置環境的,獲得上下文,就是獲得了環境的信息,也就是獲得了你配置文件的信息,所以經常獲取spring的上下文,就是直接讀取spring的配置文件,因為這個配置文件配置的環境信息呀
因為applicationcontext.xml里面有管理bean,所以一些類讀取了這個配置文件,就可以獲得這個bean,從而進行使用;
個人理解就是會將整個項目的一些配置加載到上下文中
別人的理解:上下文是運行環境,運行環境包括你設置的各種變量或參數的值,或者創建的類
Spring上下文就是系統啟動的時候Spring會讀取它的配置文件裝載到上下文到內存,依賴注入...
Spring的上下文,我簡單理解就是spring的當前運行的環境,也可以理解是spring可以利用的資源
上下文切換,其實就是環境切換
上下文 其實 第一次聽起來挺抽象的 我給你講個例子你就懂了
比如咱們打電話,你現在正在接一個張三的電話,突然李四給你打電話了,你得和張三說:“稍等我接一個電話”,然后你接起來李四的電話和李四說:“我現在有點事,
一會給你回過去”,然后你又掛斷了李四的,給張三打。這就是上下文切換。上下文就是你執行程序的一個環境,存儲的一些變量、等,就和你的大腦,
一樣存儲的一些記憶,一個道理。