全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

解释一下Spring IOC、AOP

发布时间:2022-08-03 16:47:07
发布人:qyf

  Spring IOC、AOP

  借助Spring实现具有依赖关系的对象之间的解耦。

  对象A运行需要对象B,由主动创建变为IOC容器注入,这便是控制反转。

  获得依赖对象的过程被反转了,获取依赖对象的过程由自身创建变为由IOC容器注入,这便是依赖注入。

  BeanFactory 和 ApplicationContext 有什么区别?

  BeanFactory是Spring的最底层接口,包含bean的定义,管理bean的加载,实例化,控制bean的生命周期,特点是每次获取对象时才会创建对象。

  ApplicationContext是BeanFactory的子接口,拥有BeanFactory的全部功能,并且扩展了很多高级特性,每次容器启动时就会创建所有的对象。ApplicationContext的额外功能:

  继承MessageSource,支持国际化;

  统一的资源文件访问方式;

  提供在监听器中注册bean;

  同时加载过个配置文件;

  载入多个(有继承关系)上下文,使得每个上下文都专注于一个特定的层次,比如应用的web层。

  BeanFactory通常以编程的方式被创建,ApplicationContext可以以声明的方式创建,如使用ContextLoader。

  BeanFactory 和 ApplicationContext都支持BeanPostProcessor,BeanFactoryPostProcessor,但BeanFactory需要手动注册,ApplicationContext则是自动注册。

  什么是 JavaConfig?

  JavaConfig是Spring3.0新增的概念,就是以注解的形式取代Spring中繁琐的xml文件。 JavaConfig结合了xml的解耦和java编译时检查的优点。

  @Configuration,表示这个类是配置类;

  @ComponentScan,相当于xml的;

  @Bean,相当于xml的;

  @EnableWebMvc,相当于xml的;

  @ImportResource,相当于xml的;

  @PropertySource,用于读取properties配置文件;

  @Profile,一般用于多环境配置,激活时可用@ActiveProfile("dev")注解;

  Spring 有几种配置方式?

  1. xml配置文件方式

1

  2. 基于注解的方式

  项目越来越大,基于xml配置太麻烦,Spring 2.x时代提供了声明bean的注解。

  2.1 Bean的定义相关注解

  @Component

  @Controller

  @Service

  @Repository

  2.2 Bean的注入相关注解

  @Autowire

  @Resource

  3. 基于Java的方式

  Spring 3.x以后,可以通过Java代码装配Bean。

2

  原来就是配置类啊,通过@Bean、@Component、getBean方式进行Bean的注册和发现。

  更多关于“java培训”的问题,欢迎咨询千锋教育在线名师。千锋教育多年办学,课程大纲紧跟企业需求,更科学更严谨,每年培养泛IT人才近2万人。不论你是零基础还是想提升,都可以找到适合的班型,千锋教育随时欢迎你来试听。

相关文章

Cloud-IDE 是什么?

Cloud-IDE 是什么?

2023-10-14
主机和端系统之间有什么不同?

主机和端系统之间有什么不同?

2023-10-14
进程和线程有什么联系和区别?

进程和线程有什么联系和区别?

2023-10-14
结束任务管理器快捷键是什么?

结束任务管理器快捷键是什么?

2023-10-14

最新文章

常见网络安全面试题:Windows常用的命令有哪些?

常见网络安全面试题:Windows常用的命令有哪些?

2023-10-09
常见网络安全面试题:根据设备告警如何展开排查?

常见网络安全面试题:根据设备告警如何展开排查?

2023-10-09
常见网络安全面试题:mysql加固呢?(数据库加固)

常见网络安全面试题:mysql加固呢?(数据库加固)

2023-10-09
常见网络安全面试题:windows和linux加固?(操作系统加固)

常见网络安全面试题:windows和linux加固?(操作系统加固)

2023-10-09
在线咨询 免费试学 教程领取