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

    Spring原理、流程(内部最核心的就是IOC了)
    Spring目的就是让对象与对象(模块与模块)之间的关系没有通过代码来关联,都是通过配置类说明
    管理的(Spring根据这些配置 内部通过反射去动态的组装对象)
    Spring里用的最经典的一个设计模式就是:模板方法模式。

    Spring AOP与IOC
    1. IoC(Inversion of control): 控制反转
    概念:控制权由对象本身转向容器;由容器根据配置文件去创建实例并创建各个实例之间的依赖关系
    动态注入,让一个对象的创建不用new了,可以自动的生产,这其实就是利用java里的反射其实就
    是在运行时动态的去创建、调用对象,Spring就是在运行时,跟xml Spring的配置文件来动态的创
    建对象,和调用对象里的方法的 。
    核心:bean工厂;在Spring中,bean工厂创建的各个实例称作bean
    二、AOP(Aspect-Oriented Programming): 面向方面编程
    Spring还有一个核心就是AOP面向切面编程,可以为某一类对象进行监督和控制(也就是在调用这
    类对象的具体方法的前后去调用你指定的模块)从而达到对一个模块扩充的功能。这些都是通过配置
    类达到的。
    代理方式1:静态代理:
     针对每个具体类分别编写代理类;
     针对一个接口编写一个代理类;
    代理方式2:动态代理:
    针对一个方面编写一个InvocationHandler,然后借用JDK反射包中的Proxy类为各种接口动态生成相应的代理类

    SpringMVC原理、流程
    在整个Spring MVC框架中,DispatcherServlet处于核心位置,它负责协调和组织不同组件完成请求处理并返回响应的工作。具体流程为:
    1)客户端发送http请求,web应用服务器接收到这个请求,如果匹配DispatcherServlet的映射路径(在web.xml中配置),web容器将请求转交给DispatcherServlet处理;
    2)DispatcherServlet根据请求的信息及HandlerMapping的配置找到处理该请求的Controller;
    3)Controller完成业务逻辑处理后,返回一个ModelAndView给DispatcherServlet;
    4)DispatcherServlet借由ViewResolver完成ModelAndView中逻辑视图名到真实视图对象View的解析工作;
    5)DispatcherServlet根据ModelAndView中的数据模型对View对象进行视图渲染,最终客户端得到的响应消息可能是一个普通的html页面,也可能是一个xml或json串,甚至是一张图片或一个PDF文档等不同的媒体形式。

  • 相关阅读:
    164 Maximum Gap 最大间距
    162 Find Peak Element 寻找峰值
    160 Intersection of Two Linked Lists 相交链表
    155 Min Stack 最小栈
    154 Find Minimum in Rotated Sorted Array II
    153 Find Minimum in Rotated Sorted Array 旋转数组的最小值
    152 Maximum Product Subarray 乘积最大子序列
    151 Reverse Words in a String 翻转字符串里的单词
    bzoj3994: [SDOI2015]约数个数和
    bzoj 4590: [Shoi2015]自动刷题机
  • 原文地址:https://www.cnblogs.com/novalist/p/6400085.html
Copyright © 2011-2022 走看看