容器(Container)
Spring 提供容器功能,容器可以管理对象的生命周期、对象与对象之间的依赖关系,您可以使用一个配置文件(通常是 XML),在上面定义好对象的名称、如何产生(Prototype 方式或 Singleton 方式)、哪个对象产生之后必须设定成为某个对象的属性等,在启动容器之后,所有的对象都可以直接取用,不用编写任何一行程序代码来产生对象,或是建立对象与对象之间的依赖关系。
换个更直白点的说明方式:容器是一个 Java 所编写的程序,原先必须自行编写程序以管理对象关系,现在容器都会自动帮您作好。
常用容器:WebSphere,WebLogic,Resin,Tomcat
容器类
容器类 其实就是一种用来存储数据的数据结构,在 JAVA 中容器可分为即 “集合”(Set)、“列表”(List)、“映射”(Map)。至于,为什么需要容器,总的来说,主要是在以数组作为数据的存储结构中,其长度难以扩充,同时数组中元素类型必须相同。而容器可以弥补数组的这两个缺陷。
Java 容器类包含 List、ArrayList、Vector 及 map、HashTable、HashMap
ArrayList 和 HashMap 是异步的,Vector 和 HashTable 是同步的,所以 Vector 和 HashTable 是线程安全的,而 ArrayList 和 HashMap 并不是线程安全的。因为同步需要花费机器时间,所以 Vector 和 HashTable 的执行效率要低于 ArrayList 和 HashMap。
Collection
├List 接口
│├LinkedList 链表
│├ArrayList 顺序结构动态数组类
│└Vector 向量
│ └Stack 栈
└Set
Map
├Hashtable
├HashMap
└WeakHashMap List 接口