Spring

spring是什么?

1:Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。任何 Java 应用都可以从 Spring 中受益。Spring 的核心是控制反转(IoC)和面向切面(AOP)。简单来说,Spring 是一个分层的 JavaSE/EE full-stack(一站式) 轻量级开源框架

    2:是一个三层架构,也为J2EE应用程序开发提供集成的框架;

            Web层:Spring MVC;

            业务层 :Spring的IoC;

            持久层 :Spring的JDBC、ORM、等持久层框架;

    3:Spring的核心是:控制反转(IoC)和面向切面编程(AOP);

            IoC :控制反转

①:控制反转模式(也称依赖性介入),主要是不创建对象,但是描述创建它们的方式,在代码中不直接与对象和服务连接,但在配文件中描述哪一组件需要哪一个服务;   

②:IoC的设计目标是与JavaBean组件一起使用;

③:直接作用在功能的底层; 

④:Spring里面最高级的抽象是BeanFactory(对应的是工厂模式);

      BeanFactory有两种模式:单态、原型;

      单态:查询时对具有特定名称的对象共享实例进行检索;  eg:Singleton

       原型:每次检索都会创建单独的对象,(在每个用户都需要自己的对象时,原型模式是最适合的);

Spring框架核心


Spring设计目标:Spring为开发者提供一个一站式轻量级应用开发平台;

Spring设计理念:在JavaEE开发中,支持POJO和JavaBean开发方式,使应用面向接口开发,充分支持OO(面向对象)设计方法;Spring通过IoC容器实现对象耦合关系的管理,并实现依赖反转,将对象之间的依赖关系交给IoC容器,实现解耦;

Spring框架的核心:IoC容器和AOP模块。通过IoC容器管理POJO对象以及他们之间的耦合关系;通过AOP以动态非侵入的方式增强服务。
 

后期后面添加案例,方便理解;

          DI:依赖注入

         AOP :面向切面编程 

 

Spring的优缺点


优点

  • 方便解耦,简化开发
  • Spring就是一个大工厂,可以将所有对象的创建和依赖关系的维护,交给Spring管理。
  • AOP编程的支持
  • Spring提供面向切面编程,可以方便的实现对程序进行权限拦截、运行监控等功能。
  • 声明式事务的支持
  • 只需要通过配置就可以完成对事务的管理,而无需手动编程。
  • 方便程序的测试
  • Spring对Junit4支持,可以通过注解方便的测试Spring程序。
  • 方便集成各种优秀框架
  • Spring不排斥各种优秀的开源框架,其内部提供了对各种优秀框架的直接支持(如:Struts、Hibernate、MyBatis等)。
  • 降低JavaEE API的使用难度
  • Spring对JavaEE开发中非常难用的一些API(JDBC、JavaMail、远程调用等),都提供了封装,使这些API应用难度大大降低。

缺点

  • Spring明明一个很轻量级的框架,却给人感觉大而全
  • Spring依赖反射,反射影响性能
  • 使用门槛升高,入门Spring需要较长时间

Spring的应用场景


应用场景:JavaEE企业应用开发,包括SSH、SSM等

Spring价值:

  • Spring是非侵入式的框架,目标是使应用程序代码对框架依赖最小化;
  • Spring提供一个一致的编程模型,使应用直接使用POJO开发,与运行环境隔离开来;
  • Spring推动应用设计风格向面向对象和面向接口开发转变,提高了代码的重用性和可测试性;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值