Spring的常用启动类

Spring针对不用的业务场景提供了不同的启动类实现,其基类是ApplicationContext。

spring的配置使用方式有三种,基于Xml,基于注解,Java-based。

三种使用方式代表的spring的配置演进。

在注解尚未流行时,spring提供了当时流行的代码配置解耦策略,xml。以XML定义配置骨架,容器围绕配置骨架解析配置组装对象。

随着应用代码量的膨胀,配置越来越臃肿,随之注解流行开来,spring也应时提供了注解时配置,在这个时代注解和XML配置共存,和谐的合作着。

技术一直在演进,各种思想一直在博弈,纯净Java派占领了浪尖,注解方兴未艾,Java-base Config大行天下。SpringBoot的推出,使xml配置使用方式淹没在海底。Java-base config太纯粹,太霸道,它不允许任何的xml存在。

三种使用方式孰优孰劣,官方说法 it depends。

ClassPathXmlApplicationContext

FileSystemXmlApplicationContext

AnnotationConfigApplicationContext

AnnotationConfigWebApplicationContext

GenericApplicationContext

GenericXmlApplicationContext

GenericGroovyApplicationContext

XmlWebApplicationContext

ComplexWebApplicationContext

GenericWebApplicationContext

StaticApplicationContext

StaticWebApplicationContext

SimpleWebApplicationContext

StubWebApplicationContext

相关推荐
华仔啊2 小时前
为啥不用 MP 的 saveOrUpdateBatch?MySQL 一条 SQL 批量增改才是最优解
java·后端
xiaoye20184 小时前
Lettuce连接模型、命令执行、Pipeline 浅析
java
beata7 小时前
Java基础-18:Java开发中的常用设计模式:深入解析与实战应用
java·后端
Seven978 小时前
剑指offer-81、⼆叉搜索树的最近公共祖先
java
雨中飘荡的记忆1 天前
保证金系统入门到实战
java·后端
Nyarlathotep01131 天前
Java内存模型
java
暮色妖娆丶1 天前
不过是吃了几年互联网红利罢了,我高估了自己
java·后端·面试
NE_STOP1 天前
MyBatis-参数处理与查询结果映射
java
狂奔小菜鸡1 天前
Day40 | Java中的ReadWriteLock读写锁
java·后端·java ee