Spring(一)——整体介绍

工做闲着,快速回顾一下spring框架。Spring框架,是进行对象管理,对象关联,解耦的一个中间层框架。SSH(Struts+Spring+Hibernate)三大Spring在中间就起着一个承上启下的做用。好,首先咱们先来看一下Spring框架的一些知识点,经过下边这张图来总括一下:spring


 

 

         好,这篇博客我们先来对Spring框架进行一个初步的了解。编程


          一,框架介绍:设计模式

          1,先看一下帮助文档的这张图,里边主要包括了Spring自身的功能,还有能够和其框架结合的一些框架,经过这张图能够看出,Spring框架和其余框架的集成能力是很是强的。服务器


 

          2,Spring是一个轻量级的IOC和AOP容器框架: app

              a,轻量级:程序实现不是很复杂,代码不是不少,占用资源不是不少,没有侵入性;框架

              b,IOC(Inversion of Control 控制反转):对象建立责任的反转(重点,核心);单元测试

              c, Aop(Aspect Oriented Programming):一种面向横切面编程的思想方式,能够进行功能性扩展,看前边的一篇转载的博客:面向横切面(AOP)编程测试

              d,容器:能够容纳对象,而且能够控制对象的生命周期spa

 

         二,看一下使用步骤吧!(框架用多了,感受步骤都大同小异).net

              1,仍是拷贝jar包:

            

 

             2,拷贝框架的核心配置文件,存放在src目录下:

          

 

            3,编写框架的核心配置文件,将声明对象都交给Spring框架来建立,以及初始化,例如service层的类,action层类,dao层类等等,均可以交给Spring进行管理,看一个例子:


<bean id="loginAction" class="com.ljh.struts2.action.LoginAction" scope="prototype"></bean>

  分析:

  a,框架建立对象的方式:框架默认建立对象是单例的:scope="singleton",固然action咱们想要多例建立,须要设置:scope="prototype"

            

  b,利用beanFactory加载配置文件:

        工厂BeanFactory,,若是使用BeanFactory来加载Spring配置文件,那么是在调用getBean时,框架调用对象的默认构造方法来建立对象。BeanFactory功能是对bean对象的生命周期进行管理的。(建立,初始化,销毁)

//加载配置文件,建立Spring的应用环境  
        String path = "applicationContext.xml";       
        Resource resource = new ClassPathResource(path);    //推荐  
        //Resource resource = new FileSystemResource("src/applicationContext.xml");  
        //Resource resource = new ServletContextResource(servletContext, path); //若是文件存放到WEB-INF目录下  
          
        BeanFactory factory = new XmlBeanFactory(resource);  
  
        //从Spring环境中获取对象  
        Object obj = factory.getBean("loginAction");  
          
  
        LoginAction action = (LoginAction)obj ;

 

      c,  利用ApplicationContext加载配置文件:

         来用才对象来加载Spring配置文件,会在加载时解析配置文件,建立对象,而不是在getBean时建立。其实,ApplicationContext接口继承了BeanFactory,因此具有BeanFactory全部功能,同时增长扩展的功能,例如加载资源配置文件,国际化支持等!

  ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");  
              
   Object obj = ac.getBean("loginAction");


三,Sping框架的优缺点:

     优势:

  • 轻量级的容器框架,没有侵入性

  • IoC更加容易组合对象之间的关系,经过面向接口进行编程,能够低耦合开发。

  • 易于本地测试(Junit单元测试,不用部署服务器)

  • AOP能够更加容易的进行功能扩展,遵循OCP开发原则。

  • Spring默认对象的建立为单例的,咱们不须要再使用单例的设计模式来开发单体类。

  • Spring的集成很强大,另外能够对其余框架的配置进行一元化管理。

  • Spring的声明式事务的方便使用。


    缺点:

         自我感受是全部框架共有的,就是开发对设计要求较高,集成测试麻烦,对框架有必定的依赖性。 

         总而言之,Spring框架功能是很是强大的,单独使用可能感受不是很深,和其余的框架结合使用,就会张显她的魅力了。

相关文章
相关标签/搜索