spring学习笔记之核心理念(一)

简介: spring学习笔记之核心理念(一)

spring是java开发者必备的基础框架之一,本文从入门级别的基础开始阐述自己的一点点理解

架构图

spring整体架构为20多个模块,我最熟悉的有AOP模块(拿来做统计日志,统计方法耗时等)、JDBC(连接数据库)、Servlet(交互式地浏览和生成数据)

1.Core Container

Core Container包含有 Bean Core Context Expression Language 4个模块。

基础模块:Core、Bean,这两个模块提高了spring的核心,IOC控制反转和DI依赖注入,BeanFactor通过工厂模式解决了单例的需要,Core模块则是提供了所有spring其他组件需要的核心工具类,可以理解为是一个公共的类库。

2.Data Acces/Integration

Data Acces/Integration 包含JDBC、ORM、OXM、JMS 和Transaction

重点模块:JDBC 连接数据库的;ORM,对象-关系映射;Transaction 声明式事务

3.Web,为应用程序提供上下文

  • AOP
    AOP模块,可以让你定义例如方法拦截器和切点,将逻辑代码分开

IOC的基本概念

IOC有三种依赖注入的方式,即构造方法注入、setter方法注入以及接口注入

bean的生命周期

核心知识点

  • bean的生命周期

bean对象实例化—>设置对象属性—>beanserviceprosesor前置处理->inilizisionBean 初始化检测—>init method —>beanserviceprosesor 后置处理—>使用中—>destory inilizisionBean —>destory init

beanfactory和factorybean和applicationcontext的区别

  • ioc和aop的理念

ioc就是控制反转

  • spring里面用了什么设计模式

beanFactory 用到了单例模式、工厂模式

aop用到了代理模式

  • Spring中bean的作用域

singleton

protype

session

globle session

  • Spring框架中的Bean是线程安全的么?如果线程不安全,那么如何处理

不是线程安全的,可以切换多例

  • 自动装配

no

byName

byType

注入方式

构造方法注入

getter setter 注入

接口注入

2.5之后加了一个注解注入

---------------------本文参考书籍《Spring源码深度解析》、《Spring揭秘》王富强版

目录
相关文章
|
5月前
|
XML Java Shell
【深入浅出Spring原理及实战】「夯实基础系列」360全方位渗透和探究Spring的核心注解开发和实现指南(Spring5的常见的注解)
【深入浅出Spring原理及实战】「夯实基础系列」360全方位渗透和探究Spring的核心注解开发和实现指南(Spring5的常见的注解)
33 1
|
5月前
|
前端开发 搜索推荐 Java
【Spring底层原理高级进阶】基于Spring Boot和Spring WebFlux的实时推荐系统的核心:响应式编程与 WebFlux 的颠覆性变革
【Spring底层原理高级进阶】基于Spring Boot和Spring WebFlux的实时推荐系统的核心:响应式编程与 WebFlux 的颠覆性变革
|
4月前
|
安全 Java API
基于Spring Boot的企业级应用架构设计
基于Spring Boot的企业级应用架构设计
|
3月前
|
监控 Java API
使用Spring Boot构建企业级应用的实践
使用Spring Boot构建企业级应用的实践
|
3月前
|
开发框架 监控 Java
Spring Boot中的反应式编程最佳实践
Spring Boot中的反应式编程最佳实践
|
5月前
|
Java 程序员 Maven
基础框架 Spring
基础框架 Spring
|
5月前
|
前端开发 Java 应用服务中间件
选择 Spring Boot 进行微服务开发的 7 大理由
选择 Spring Boot 进行微服务开发的 7 大理由
57 1
|
5月前
|
XML Java 数据库连接
详解Spring核心技术
Spring可以用非容器依赖的编程方式进行几乎所有的测试工作,支持JUnit和TestNG等测试框架。
36 1
|
Java 数据库连接 测试技术
Spring 5系统架构
Spring大约有20个模块,由1300多个不同的文件构成。这些模块可以分为核心容器、AOP和设备支持、数据访问与集成、Web组件、通信报文和集成测试、集成兼容等类。Spring 5的模块结构如下图所示。
80 0
|
存储 Kubernetes 安全
浅入 Spring Cloud 架构设计
微服务架构 SpringCloud 基础设计
下一篇
无影云桌面