zoukankan      html  css  js  c++  java
  • Spring工作原理

    一、 IoC(Inversion of control): 控制反转
    1、IoC:
    概念:控制权由对象本身转向容器;由容器根据配置文件去创建实例并创建各个实例之间的依赖关系
    核心:bean工厂;在Spring中,bean工厂创建的各个实例称作bean
    二、AOP(Aspect-Oriented Programming): 面向方面编程
    1、 代理的两种方式:
    静态代理:
     针对每个具体类分别编写代理类;
     针对一个接口编写一个代理类;
    动态代理:
    针对一个方面编写一个InvocationHandler,然后借用JDK反射包中的Proxy类为各种接口动态生成相应的代理类
    2、 AOP的主要原理:动态代理



    Spring工作原理
            Spring 已经用过一段时间了,感觉Spring是个很不错的框架。内部最核心的就是IOC了,
    动态注入,让一个对象的创建不用new了,可以自动的生产,这其实就是利用java里的反射
    反射其实就是在运行时动态的去创建、调用对象,Spring就是在运行时,跟xml  Spring的配置
    文件来动态的创建对象,和调用对象里的方法的 。
         Spring还有一个核心就是AOP这个就是面向切面编程,可以为某一类对象 进行监督和控制(也就是
    在调用这类对象的具体方法的前后去调用你指定的 模块)从而达到对一个模块扩充的功能。这些都是通过
    配置类达到的。
       Spring目的:就是让对象与对象(模块与模块)之间的关系没有通过代码来关联,都是通过配置类说明
    管理的(Spring根据这些配置 内部通过反射去动态的组装对象)
       要记住:Spring是一个容器,凡是在容器里的对象才会有Spring所提供的这些服务和功能。
    Spring里用的最经典的一个设计模式就是:模板方法模式。(这里我都不介绍了,是一个很常用的设计模式)
      Spring里的配置是很多的,很难都记住,但是Spring里的精华也无非就是以上的两点,把以上两点跟理解了
    也就基本上掌握了Spring.

  • 相关阅读:
    读写文件时遇到编码问题解决方法
    记录vim经常使用的几个命令
    linux 安装nginx+php+mysql
    php 几种排序模式
    rsync同步的艺术
    关于nuxt项目部署和更新
    springboot使用mybatis时报错Invalid bound statement (not found)
    Springboot 接受前端数据报错 "status": 415,"error": "Unsupported Media Type"
    youtube网页版 评论显示不出来
    [SPDK/NVMe存储技术分析]015
  • 原文地址:https://www.cnblogs.com/wangyayun/p/3798788.html
Copyright © 2011-2022 走看看