zoukankan      html  css  js  c++  java
  • spring技术小结

    1.DI和IOC

    依赖注入(Dependency Injection)还是控制反转(Inversion of Conctrol)

    bean通过依赖注入,注册到spring容器里面。spring容器通过控制反转,调用bean。

    2.DI的方法

    这里网上很多配置注入,构造方法注入,类参数注入,get/set注入等等,一点总结能力都没有啊。

    其实就两种,配置注入和方法注入。java8支持多注解(annotations)之后,方法注入多了灵活的注解注入。

    3.bean的作用域

    singleton:单例模式,在整个Spring IoC容器中,使用singleton定义的bean将只有一个实例;
    prototype:原型模式,每次通过容器的getBean方法获取prototype定义的Bean时,都将产生一个新实例;
    request:每次HTTP请求中,使用request定义的bean都将产生一个新实例,只有在web应用程序使用Spring时,该作用域才有效;
    session:每次HTTP请求中,使用session定义的bean都将产生一个新实例,只有在web应用程序使用Spring时,该作用域才有效;
    global session:和session类似,但是只适用于portlet(另一个mvc框架),若在springmvc里面就是session的效果

    4.获取spring容器

    通过上面说的request,session之类的xxxxContext向上获取spring容器(ApplicationContext);

    或者直接实现ApplicationContextAware接口

    或者直接通过配置获取

    ApplicationContext ctx  = new ClassPathXmlApplicationContext("bean.xml");

    PS.都不建议获取spring容器,因为提高了耦合,污染了代码。

    并且通过配置获取,会将初始化所有Bean实例。

    5.spring的装配

    @Autowire 自动装配。

    @Qualifier 精确装配。

  • 相关阅读:
    Xamarin studio配置问题
    安装moogodb
    什么是作用域, 什么是闭包, 什么是原型链,什么是递归, 什么是函数函数声明,什么是函数表达式,继承,this 指向
    前端框架Vue、angular、React的优点和缺
    判断终端是IOS 或 是Android
    VS code终端错位
    安装Flutter
    web直传OSS设置 头部信息【坑】
    从零创建react项目
    webpack报错vue-template-compiler 版本不对
  • 原文地址:https://www.cnblogs.com/ydymz/p/10058515.html
Copyright © 2011-2022 走看看