zoukankan      html  css  js  c++  java
  • 什么是spring框架?

    什么是spring框架?

    1)IOC 控制反转,对象创建责任的反转,在spring中BeanFacotory是IOC容器的核心接口,负责实例化,定位,配置应用程序中的对象及建立这些对象间的依赖。XmlBeanFacotory实现BeanFactory接口,通过获取xml配置文件数据,组成应用对象及对象间的依赖关系。
    spring中有3中注入方式,一种是set注入,另一种是接口注入,另一种是构造方法注入。

    2)AOP面向切面编程

    AOP就是纵向的编程,如下图,业务1 和 业务2 都需要一个共同的操作。与其往每个业务中都添加同样的代码,不如,写一遍代码,让两个业务共同使用这段代码。

    spring中面向切面编程的实现有两种方式,一种是动态代理,一种是CGLIB,动态代理必须要提供接口,而CGLIB实现是由=有继承。

    3)为什么使用spring框架

    在不使用spring框架之前,我们的service层中要使用dao层的对象,不得不在service层中new一个对象。
    如下:
    下面展示一些 内联代码片

    //dao层对象
    public class UserDao{
    		public void insert (User user) {}
    }
    
    //service层对象
    public class UserService{
    		public void insert(User user) {
    				UserDao userdao = new UserDao();
    				userdao.insert(user);		
    		}
    }

    存在问题:层与层之间的依赖。
    使用框架之后:
    下面展示一些 内联代码片

    //dao层对象
    public class UserDao{
    		public void insert(User user){}
    }
    //service层对象
    public class UserService{
    		private UserDao userdao;
    		public UserDao getUserdao(){
    				return userdao;
    		}
    		public void setUserdao (UserDao userdao) {
    				this.userdao=userdao;
    		}
    		public void insert(User user){
    				userdao.insert(user);
    		}
    }

    service 层要用dao层对象需要配置到xml配置文件中,至于对象是怎么创建的,关系是怎么组合的都交给了spring框架去实现。

    4)框架优点:

    轻量级的容器框架没有侵入性
    使用IOC容器更加容易组合对象直接间关系,面向接口编程,降低耦合
    AOP可以更加容易的进行功能扩展,遵循OCP开发原则;
    创建对象默认是单例的,不需要在使用单例模式进行处理

    5) 缺点:
    业务功能依赖spring特有的功能,依赖与spring环境。

    总结:

    spring是一个开放源代码的设计层面框架,它解决的是业务逻辑层和其他各层的松耦合问题,是一个分层的javaEE一站式轻量级开源框架

     

  • 相关阅读:
    mac 切换 默认xcode 版本
    mac 查看jenkins 管理员密码地址
    解决 mac ox 终端显示bogon 的问题
    eclipse 修改默认作者信息
    mac 查看 本地网络代理
    appium 解决 启动case 时不 重装 setting 和 unlock.apk的解决方案实践
    appium 输入时间慢的解决方案
    命令 关闭 appium 命令
    解决 appium could not start ios-webkit-debug-proxy
    PPT总结
  • 原文地址:https://www.cnblogs.com/csk001/p/14223810.html
Copyright © 2011-2022 走看看