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

相关推荐
小坏讲微服务1 天前
Spring Cloud Alibaba 整合 Scala 教程完整使用
java·开发语言·分布式·spring cloud·sentinel·scala·后端开发
过客随尘1 天前
Spring AOP以及事务详解(一)
spring boot·后端
老鼠只爱大米1 天前
Java设计模式之外观模式(Facade)详解
java·设计模式·外观模式·facade·java设计模式
vx_dmxq2111 天前
【微信小程序学习交流平台】(免费领源码+演示录像)|可做计算机毕设Java、Python、PHP、小程序APP、C#、爬虫大数据、单片机、文案
java·spring boot·python·mysql·微信小程序·小程序·idea
9号达人1 天前
优惠系统演进:从"实时结算"到"所见即所得",前端传参真的鸡肋吗?
java·后端·面试
q***07141 天前
Spring Boot 中使用 @Transactional 注解配置事务管理
数据库·spring boot·sql
AAA简单玩转程序设计1 天前
Java进阶小妙招:ArrayList和LinkedList的"相爱相杀"
java
lkbhua莱克瓦241 天前
集合进阶8——Stream流
java·开发语言·笔记·github·stream流·学习方法·集合
20岁30年经验的码农1 天前
Java Elasticsearch 实战指南
java·开发语言·elasticsearch
okseekw1 天前
Java 中的注释与关键字的初步学习
java