Spring 框架简介

Spring是一个开源框架,框架的主要优势之一就是其分层架构,分层架构允许选择使用其中一个组件,同时为J2EE应用程序开发提供集成的框架。Spring由7个定义良好的模块组成,Spring模块构建在核心容器之上,核心容器定义了创建、配置和管理bean的方式

 

 

 

核心容器           提供spring框架的基本功能。核心容器的主要组件时BeanFactory,工厂模式的实现,其使用控制反转IOC模式将应用程序的配置和依赖性规范与  实际的应用程序代码分开

 

Spring上下文    spring上下文是一个配置文件,向spring框架提供上下文信息。spring上下文包括企业服务,例如JNDI EJB  电子邮件 国际化  校验和调度等

 

Spring AOP      通过配置管理特性,spring AOP模块直接将面向方面的编程功能集成到框架中。该模块为基于spring应用程序中的对象提供了事务管理服务

 

Spring DAO      jdbc dao抽象层提供了有意义的异常层次结构,可用该结构来管理处理和不同数据库供应商抛出的错误消息。异常层次结构简化了错误处理,        降低了需要编写的异常代码数量

 

Spring ORM      框架插入了若干各ORM框架,提供了ORM的对象关系工具,包括JDO  HIBERNATE IBATIS 

 

Spring Web        web上下文模块建立在应用程序上下文模块之上,为基于web应用程序提供上下文,该模块还简化了处理

多部分请求一级将请求参数绑定到域对象的工作

 

Spring MVC        该框架是一个全功能的构建web应用程序的MVC实现,通过策略接口,MVC框架成为高度可配置的,MVC容纳大量视图技术,包括JSP                   VELOCITY  TILES ITEXT POI

 

IOC和AOP

         控制反转模式的基本概念:不创建对象,但是描述创建它们的方式。在代码中不直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务,容器负责将这些联系在一起。 在典型IOC场景中,容器创建了所有对象,并设置必要的属性将它们连接在一起,决定什么时间调用方法

 

 

 

 

 

 

 

面向方面编程

        AOP,允许程序员对横切关注点或横切典型的职责分界线的行为(例如日志和事务管理)进行模块化。可将影响多个类的行为封装到可重用的模块中。AOP是IOC的补充,它们运用模块化方式解决复杂问题

 

IOC容器 

         Spring设计的核心是org.springframework.beans包,与JavaBean组件一起使用。这个包通常不是由用户直接使用,而是由服务器将其用作多数功能的底层中介。下一个最高抽象是BeanFactory接口,它是工厂模式的实现,允许通过名称创建和检索对象,BeanFactory也可以管理对象之间的关系

 

BeanFactory支持两个对象模型

        单态   提供具有特定名称的对象的共享实例,可以在查询时对其进行检索。Singleton是默认也是最常用的对象模型,对于无状态服务对象很理想

        原型   确保每次检索都会创建单独的对象。在每个用户都需要自己的对象时,原型模型最适合

         bean工厂的概念时Spring作为IOC容器的基础,IOC将处理事情的责任从应用程序代码转移到框架

 

 BeanFactory接口

           BeanFactory是一个接口,可以针对各种底层存储方法实现,最常用的BeanFactory定义是XmlBeanFactory,根据xml文件中定义装入bean

BeanFactory factory = new XMLBeanFactory(new FileInputStream('xxx.xml'));

在xml文件中定义的bean是被消极加载的,在需要bean之前,bean本身不会被初始化。要从BeanFactory检索bean,只需调用getBean()方法,传                         入要检索的bean 名称即可   MyBean mybean = (MyBean) factory.getBean("mybean"); 每个bean的定义都可以是POJO或FactoryBean

 

 

posted @ 2020-05-21 10:53  秋水秋色  阅读(1620)  评论(0编辑  收藏  举报