乐途乐途
主页
  • 计算机基础

    • TCP/IP协议
    • Linux命令
    • HTTP协议
  • 数据库

    • SQL
    • MySQL 5.7
  • 编程语言

    • C语言
    • Python2
    • Python3
  • 数据格式

    • JSON
    • XML
  • 认证与安全

    • JWT
  • 工具

    • Markdown
  • Git

    • GitFlow
  • Quartz

    • Quartz
  • Java

    • MyBatis
    • Spring
    • Spring MVC
    • Maven 入门
    • Maven 进阶
    • Java 设计模式
  • 缓存

    • Redis
联系
阿里云
主页
  • 计算机基础

    • TCP/IP协议
    • Linux命令
    • HTTP协议
  • 数据库

    • SQL
    • MySQL 5.7
  • 编程语言

    • C语言
    • Python2
    • Python3
  • 数据格式

    • JSON
    • XML
  • 认证与安全

    • JWT
  • 工具

    • Markdown
  • Git

    • GitFlow
  • Quartz

    • Quartz
  • Java

    • MyBatis
    • Spring
    • Spring MVC
    • Maven 入门
    • Maven 进阶
    • Java 设计模式
  • 缓存

    • Redis
联系
阿里云
  • 学习路径
  • 第1章 Spring概述与IoC容器

    • Spring概述与IoC容器
    • Spring Framework 概述
    • IoC 与 DI 核心概念
    • @Configuration 详解
    • @Component 详解
    • @ComponentScan 详解
    • @Import 详解
    • @Profile 详解
    • @PropertySource 详解
    • @Service 详解
    • @Repository 详解
  • 第2章 Bean的定义与依赖注入

    • Bean的定义与依赖注入
    • @Bean 详解
    • @Autowired 详解
    • @Qualifier 详解
    • @Primary 详解
    • @Resource 详解
    • @Inject 详解
    • @Named 详解
    • @Value 详解
    • @Scope 详解
    • @Lazy 详解
  • 第3章 Bean生命周期与作用域

    • Bean生命周期与作用域
    • Bean生命周期概述
    • @PostConstruct
    • @PreDestroy
    • InitializingBean
    • DisposableBean
    • BeanPostProcessor
    • BeanFactoryPostProcessor
  • 第4章 AOP面向切面编程

    • AOP面向切面编程
    • AOP核心概念
    • @EnableAspectJAutoProxy
    • @Aspect
    • @Pointcut
    • @Before
    • @After
    • @AfterReturning
    • @AfterThrowing
    • @Around
  • 第5章 数据访问与事务管理

    • 数据访问与事务管理
    • 数据访问概述
    • @EnableTransactionManagement
    • @Transactional
    • @Transactional 的传播行为
    • @Transactional 的隔离级别
    • @Transactional 的回滚规则
    • @Transactional 的超时与只读属性
    • @TransactionalEventListener
  • 第6章 Spring Boot自动配置基础

    • Spring Boot自动配置基础
    • @SpringBootApplication 注解
    • @EnableAutoConfiguration 注解
    • @ConfigurationProperties 注解
    • @ConditionalOnClass 注解
    • @ConditionalOnMissingBean 注解
    • @ConditionalOnProperty 注解
  • 第7章 从容器到Web: Spring MVC导引

    • Spring MVC 导引
  • 第8章 扩展阅读

    • 扩展阅读
    • Spring 事件机制 — ApplicationEvent / ApplicationListener
    • @EventListener
    • SpEL — Spring 表达式语言
    • 校验 Validation — JSR-303 / JSR-380 Bean Validation
    • 类型转换与数据绑定 — Converter / DataBinder
  • 附录

    • Spring Framework 专业术语
    • Spring 核心知识点
    • Spring 面试高频考点
    • Spring 核心注解速查表

"大翔在飞翔科技的技术选型会上说:'我们要找一个能让代码解耦、让测试变简单的框架。'白歌推荐了Spring。这一章,你将理解白歌为什么做此推荐,以及Spring最核心的'容器'思想。"

Spring概述与IoC容器

本章定位

本章解决的核心问题:Spring是什么,以及它如何通过IoC容器将对象的创建权从程序员手中反转给框架,从而实现解耦。

学习路线图

学习顺序说明:先建立Spring全局认知 → 理解IoC/DI核心思想 → 掌握三类核心 stereotype 注解 → 学习配置类与扫描机制 → 深入模块化配置与外部化配置 → 最后掌握多环境切换。

文件关系说明

文件一句话角色
Spring_Framework概述.md飞翔科技技术选型会的背景板,回答"为什么选Spring"。
IoC与DI核心概念.md本章灵魂文件,理解"控制反转"与"依赖注入"的哲学。
Component.md通用组件注解,IoC容器识别Bean的"身份证"。
Service.md业务层组件注解,小崔写Service层时最常用的标记。
Repository.md数据层组件注解,标记DAO/数据访问组件。
Configuration.md配置类注解,替代XML的JavaConfig核心入口。
ComponentScan.md自动扫描注解,让容器自动发现@Component及其派生注解。
Import.md模块化配置注解,将多个配置类组装成整体。
PropertySource.md外部化配置注解,将数据库密码等配置从代码中剥离。
Profile.md多环境切换注解,李眉部署时区分dev/test/prod的利器。

知识图谱

核心逻辑:IoC是思想,DI是实现手段;@Component及其派生注解定义Bean身份;@Configuration + @ComponentScan 构建容器;@Import、@PropertySource、@Profile 解决模块化、外部化、多环境三大工程问题。

与下一章的衔接

本章学完后,你已经理解了容器如何识别和收纳Bean。下一章「Bean的定义与依赖注入」将解决:容器收纳Bean之后,如何精确地装配它们之间的依赖关系——小崔的Service如何自动拿到Repository实例?当存在多个同类型Bean时如何选择?这些正是 @Autowired、@Qualifier、@Primary 等注解要回答的问题。

下一页
Spring Framework 概述