什么是Spring,他有什么特色??

Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。web

轻量-----从大小与开销两方面而言Spring都是轻量的。完整的Spring 框架能够在一个大小只有1MB多的JAR文件里发布。而且Spring 所需的处理开销也是微不足道的。此外,Spring 是非侵入式的:典型的,Spring应用中的独享不依赖与Spring的特色类。
控制反转(IoC)-------Spring 经过一种陈祚控制反转(IoC)的技术促进了送耦合。当应用IoC,一个对象依赖的其余对象会经过北大的方式传递进来,而不是这个对象本身建立或者查找依赖对象。你能够认为IoC与JNDI相反-----不是对象从容器中查找依赖,二十容器在对象初始化时不等对象请求就主动将依赖传递给他。
面向切面-------Spring 提供了面向切面编程的丰富支持,容许经过分离应用的业务逻辑与系统级服务(例如审计(auditing)和事务管理)进行内聚性的开发。应用对象只实现他们应该作的------完成业务逻辑-----仅此而已。他们并不负责(甚至是意识)其余的系统级关注点,例如日志或者事务支持。
容器--------Spring 包含并管理应用对象的配置和生命周期,在这个意义上他是一种容器,你能够配置你的每一个bean 如何被建立-------基于一个可配置原型(prototype),你的bean 能够建立一个单独的实例或者每次须要时都生成一个新的实例-------以及他们是如何相互关联的。然而,Spring不该该被混同于传统的重量级的EJB容器,他们常常是庞大与笨重的,难以使用。
框架-------Spring能够将简单的组件配置、组合成复杂的应用。在Spring 中,应用对象呗声明式的组合,典型的是在一个XML文件里。Spring 也提供了不少基础功能(事务管理、持久化框架集成等等),将应用逻辑的开发留给了你。编程