
0302【Spring】
Spring 书籍学习笔记
努力的阳光蓝孩
学习一时爽,一直学习一直爽
展开
-
Spring中Bean的生命周期 的全流程图
02 源码IOC 启动流程分析 · 语雀原创 2022-02-08 22:25:56 · 353 阅读 · 0 评论 -
Bean 的生命周期
一、图片二、描述1、Spring 依赖注入的三种方式接口注入、属性注入、构造方法注入2、生命周期描述过程根据配置情况调用Bean 构造方法或工厂方法实力化Bean利用依赖注入完成Bean中所有的属性值的配置注入如果Bean 实现了BeanNameAware 接口,则Spring 调用Bean 的setBeanName() 方法传入当前Bean 的id 值。如果Bean 实现了BeanFactoryAware接口,则Spring 调用setBeanFactory() 方法传原创 2020-11-21 15:04:23 · 544 阅读 · 0 评论 -
【Spring5.2x 源码 了解】 01 Spring 01 分析一下 ApplicationContext
一、简单了解二、AnnotationConfigWebApplicationContext三、ClassPathXmlApplicationContext四 分析1、ResourceLoader代表了加载资源的一种方式,正是策略模式的实现。策略模式:2、构造方法 /** * Create a new ClassPathXmlApplicationContext with the given parent, * loading the definitions from the原创 2020-10-29 23:30:15 · 132 阅读 · 0 评论 -
【Spring】04 Spring IOC 容器是指
一、介绍1、BeanFactory是Spring 底层IOC容器2、ApplicationContext是具备应用特性的BeanFactory超集二、Spring IOC 配置元信息1、Bean 定义配置基于XML 文件、基础Properties文件、基于Java 注解、基于Java API2、IOC 容器配置基于XML 文件、基于Java 注解、基于Java API3、外部化配置属性基于Java 注解三、Spring应用上下文1、ApplicationContext 除了原创 2020-07-10 07:28:34 · 110 阅读 · 0 评论 -
【Spring】02 IOC 容器介绍
一、IOC 容器的职责1、通用职责2、依赖处理依赖查找依赖注入3、生命周期管理容器托管的资源(Java Beans 或其他资源)4、配置容器外部化配置托管的资源(Java Beans 或其他资源)二、传统IOC 容器的实现1、Java SEJava Beans 、Java Service SPI 、JNDI(Java Naming and Directory Interface)2、Java EEEJB(Enter原创 2020-07-09 09:13:56 · 148 阅读 · 0 评论 -
【Spring】03 IOC 依赖查找、依赖注入(小马哥粉丝)
一、ObjectFactory 、BeanFactory 、FactoryBean 的区别环境准备pom.xml <dependencies> <!-- Spring IoC 核心依赖 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-co原创 2020-07-09 09:13:03 · 492 阅读 · 0 评论 -
【Spring】01 Spring 概览
###一、 核心特性1、IOC容器(IOC Container)2、Spring 事件(Events)3、资源管理(Resource)4、国际化(i18n)5、校验 (Validation)6、数据绑定 (Data Binging)7、类型转换 (Type Conversion)8、Spring 表达式(Spring Express Language)9、面向切面编程 (AOP)二、数据存储1、JDBC2、事务抽象(Transactions)3、DAO支持(DAO support)原创 2020-07-06 23:45:02 · 116 阅读 · 0 评论 -
【Spring学习笔记】十二、Spring整合日志、分析
整合 log4j1、Spring与日志框架进行整合,日志框架就可以在控制台中,输出Spring框架运行过程中的一些重要信息。2、好处:便与了解Spring框架的运行过程,有利于程序调试1、Spring如何整合日志框架1)早起Spring 1、2、3都是与commons-logging.jar整合2)Spring5.x默认整合框架logback 、log4j22、Spring5.x整合log4j1)引入log4j jar包2)引入log4.properties配置文件3、pom.xml原创 2020-06-05 09:21:38 · 103 阅读 · 0 评论 -
【Spring学习笔记】十一、Spring 创建一个对象、细节分析
4、Spring程序开发三个步骤1、创建类型2、配置文件:applicationContext.xml3、通过工厂获得对象:ApplicationContext | ClassPathXmlApplicationContext // 1、获得spring的工厂 ApplicationContext context = new ClassPathXmlApplicationContext("/applicationContext.xml"); // 2、通过工厂获得对象 Person per原创 2020-06-05 09:18:47 · 242 阅读 · 0 评论 -
【Spring学习笔记】十、Spring核心API了解及项目搭建
一、创建一个简单的maven项目1、软件版本1)JDK1.8+2) maven3.5+ maven仓库[mvnrepository.com]3) IDEA 2018+ 3) Spring5.x [www.spring.io]4) maven3.6+ IDEA 2019 可能有一些bug> 导入依赖<!-- https://mvnrepository.com/artifact/org.springframework/spring-context --><dep原创 2020-06-04 08:28:13 · 168 阅读 · 0 评论 -
【Spring学习笔记】九、Factory反射解决对象之间耦合解决 通用工厂类设计
一、接上回分析1、如果每次创建都需要使用第八节的创建方式。每次创建一个对象都要重新写一个方法,累赘。package com.haoxiansheng.spring5.reflex;import com.haoxiansheng.spring5.Book;import com.haoxiansheng.spring5.Order;import java.io.IOException;import java.io.InputStream;import java.util.Properti原创 2020-06-04 07:58:59 · 156 阅读 · 0 评论 -
Spring学习笔记八、Factory反射解决对象之间耦合
1、工厂设计模式1)什么是工厂设计模式详情见设计模式概念:通过工厂创建对象好处:解耦对象的创建方式1、直接调用对象的构造方法创建Book book = new Book();2、通过反射的形势创建对象Class clazz = Class.forName("com.haoxiansheng.testdemo.Book");Book book = (Book) clazz.newInstance();测试一、类package com.haoxiansheng.spring5原创 2020-06-03 23:21:28 · 128 阅读 · 0 评论 -
Spring学习笔记七、自动装配 @Resource(JSR250)和@Inject(JSR330)、 @Autowired(Spring)
一、配置文件及说明 以及区别说明package com.hao.config;import com.hao.dao.BookDAO;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.ComponentScan;import org.springframework.context.annotation.Configuration;import org原创 2020-06-02 09:12:17 · 218 阅读 · 0 评论 -
Spring学习笔记六、理解IOC(控制反转)和DI依赖注入
DI 是IOC的一种具体实现一、Spring 的两个核心部分AOC 和AOP1、IOC:控制反转,把对象的创建过程交给Spring进行管理。1)底层原理xml解析、工厂模式、反射2)IOC 思想基于IOC 容器实现,底层是对象工厂3)Spring提供IOC 容器实现的两种方式:(两个接口)BeanFactory:加载配置文件时不会创建对象,在对象获取的时候才会去创建。ApplicationContext:BeanFactory接口的子接口,提供更强大的功能,在加载配置文件时就会把在配置文件对象原创 2020-06-01 22:56:46 · 269 阅读 · 1 评论 -
Spring学习笔记五、配置文件中值的获取方式、@Value、applicationContext.getEnvironment()
1、@Value 与从环境变量中获取值的代码例子person.propertiesperson.nickName=haoxianshengpackage com.hao.bean;import org.springframework.beans.factory.annotation.Value;/** * @author haoxiansheng * @date 2020-05-28 */public class Person { /** * 使用@V.原创 2020-05-29 22:19:00 · 5757 阅读 · 0 评论 -
Spring学习笔记四、bean的生命周期
1、配置package com.hao.config;import com.hao.bean.Car;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.ComponentScan;import org.springframework.context.annotation.Configuration;import org.springframework.原创 2020-05-29 22:14:34 · 157 阅读 · 0 评论 -
Spring学习笔记三、给容器中注册组件
package com.hao.config;import com.hao.bean.ColorFactoryBean;import com.hao.bean.Person;import com.hao.condition.LinuxCondition;import com.hao.condition.MacOSXCondition;import org.springframework.context.annotation.*;/** * @author haoxiansheng * @原创 2020-05-29 22:12:02 · 121 阅读 · 0 评论 -
Spring学习笔记二、@Scope、@Lazy、@Conditional 说明及代码实现
一、说明package com.hao.config;import com.hao.bean.Person;import com.hao.condition.LinuxCondition;import com.hao.condition.MacOSXCondition;import org.springframework.context.annotation.*;/** * @author haoxiansheng * @date 2020-05-28 */@Configurat.原创 2020-05-28 22:54:55 · 179 阅读 · 0 评论 -
Spring学习笔记一、Xml 注解与自动注解的区别
一、Xml 注解的方式<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"原创 2020-05-28 21:14:41 · 168 阅读 · 0 评论 -
Spring原理学习笔记一、特点了解
Spring基本了解一 特点1、轻量级二 核心组件三 常用模块1、核心容器Spring上下文SpringAopSpring DAOSpring ORMSpring Web 模块Spring MVC 框架四 主要包五 常用注解六第三方框架集成一 特点1、轻量级1)2、控制反转3、面向切面1)Spring支持面向切面编程,把应用业务逻辑和系统服务分开4、容器5、框架集合二 核心组件三 常用模块1、核心容器Spring上下文SpringAopSpring DAOSpring ORM原创 2020-05-15 09:29:02 · 141 阅读 · 0 评论