zoukankan      html  css  js  c++  java
  • Spring

    Spring范围很广,暂且开一篇胡乱拼,后期增多了内容再细分。

    1 渊源

    1.1 spring

          原型在200210由Rod Johnson发布的书中体现,后来在200403spring 1.0版本发布,201709spring 5.0发布,

    spring ioc 

    控制反转,管理容器中的bean,主要使用di依赖注入实现。

    spring Aop

    面向切面,调用者和被调用者解藕,用于权限、缓存等功能实现。

    spring transaction

    事务管理,一通过配置文件,二基于注解

    spring mvc

    数据,业务,展示分离

    spring security

    提供声明式的安全访问控制解决方案的安全框架。它提供了一组可以spring应用上下文中配置的bean,为应用提供声明式的安全访问控制功能。

    spring schedule

     基于spring能用统一的配置和编码风格来使用schedule方案,支持Jdk time、concurrent、quartz

    1.2 spring boot

         由于spring的边界不断的进行扩充,导致了基础配置越来越复杂,spring boot应运而生,201404 springboot 1.0.0发布,其核心思想,约定大于配置。

    引入web模块

       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>

    开发环境调试

    spring-boot-maven-plugin

    json接口开发

    @RestController

    @RequestMapping(“/test”)

    自定义filter

    @Configuration

    @Bean

     自定义配置文件

    @Component

    @Value(“${asd.sdf}”)

    1.3 spring cloud 

          基于spring boot开发,解决微服务架构中的服务治理而提供的开发框架。是一系列框架的有序集合,简化了分布式基础设施的开发,如发现注册,配置中心,消息总线,负载均衡,断路器,数据监控等。

    2 Spring bean的作用域  

    <bean=“” class=“” scope=“”/>

    2.1 singleton单例 缺省作用域

    容器中只会存在一个共享的bean实例,无论多少个bean引用他,始终指向一个对象。

    2.2 prototype原型

    每次通过spring容器获取的原型定义的bean时,容器都会创建一个新的bean实例。

    2.3 request

     不同的http request产生不同的bean,该bean只在当前request有效。

    2.4 session  

    不同的http session产生不同的bean,该bean仅在当前session有效。

    2.5 global session

    在一个全局的http session中,容器会返回该bean的同一个实例,仅在portlet context时有效

    3 Spring bean的生命周期

    Spring容器可以管理singleton作用域下的bean生命周期

    而对于prototype作用域的bean,只负责创建,而不再跟踪其生命周期

    4 spring bean实例化顺序

    实例化bean对象

    设置bean属性

    检验aware相关接口并设置相关依赖

    Beanpostprocessor前置处理

    检查是否是initbean决定是否调用afterpropertiesset

    检查是否配置有init-method

    Beanpostprocessor后置处理

    注册destruction相关回调接口

    使用中

    检查是否有disposablebean接口

    检查是否有destroy方法

  • 相关阅读:
    防火墙透明模式
    HP管理工具System Management Homepage安装配置
    kbmmw 中JSON 中使用SQL 查询
    kbmmw 中JSON 操作入门
    第一个kbmmw for Linux 服务器
    kbmmw 5.02发布
    kbmmw 5.01 发布
    使用delphi 10.2 开发linux 上的Daemon
    使用unidac 在linux 上无驱动直接访问MS SQL SERVER
    使用delphi 10.2 开发linux 上的webservice
  • 原文地址:https://www.cnblogs.com/guobm/p/10037328.html
Copyright © 2011-2022 走看看