先來舉幾個JAVA中用到Context的例子
(1)JNDI的一個類javax.naming.InitialContext,它讀取JNDI的一些配置信息,并內(nèi)含對象和其在JNDI中的注冊名稱的映射信息。請看下面的代碼
InitialContext ic=new InitialContext();
RMIAdaptor server=(RMIAdaptor)ic.lookup("jmx/invoker/RMIAdaptor");
RMIAdaptor server=(RMIAdaptor)ic.lookup("jmx/invoker/RMIAdaptor");
這是一段JBoss中獲取MBean的遠(yuǎn)程調(diào)用類的代碼。在這里面通過InitialContext中JNDI注冊的名稱“jmx/invoker/RMIAdaptor”來獲得RMIAdaptor
對象。這和JAVA集合中的MAP有點(diǎn)象,有一個String的key,key對映著它的對象。
(2)再來看看下面Spring中最常見的幾句代碼。ApplicationContext 是內(nèi)含configuration.xml配置文件的信息,使得可以通過getBean用名稱得到相應(yīng)的注冊對象。
ApplicationContext ctx= new FileSystemXmlApplicationContext("configuration.xml");
Object obj= ctx.getBean("Object_Name");
Object obj= ctx.getBean("Object_Name");
從上面的代碼,我很能體會到Context所代表的意義:公用信息、環(huán)境、容器....。所以我覺得Context翻譯成上下文并不直觀,按照語言使用的環(huán)境,翻譯成“環(huán)境”、“容器”可能更好。 (轉(zhuǎn))