spring
etfox
https://blog.csdn.net/m0_67463447/article/details/123602018
https://blog.csdn.net/m0_46316970/article/details/123585951
https://zhuanlan.zhihu.com/p/443132665
https://blog.51cto.com/u_5650011/5387025
展开
-
spring 中控制反转容器的使用
spring 如何管理 bean[spring 管理的对象] 和依赖关系?①:通过 构造器创建一个 bean 实例通过调用 ClassPathXmlApplicationContext 的 getBean 方法可以获取到一个 bean 的实例。②:通过 工厂方法创建一个 bean 实例原创 2017-04-22 16:33:30 · 402 阅读 · 0 评论 -
Spring 之 Enable* 注解的工作原理
通过简单的@Enable* 来开启一项功能的支持,从而避免自己配置大量的代码降低使用的难度. 通过观察@Enable*注解的源码,发现所有的注解都有一个@Import注解,它是用来导入配置类的,这也就意味着这些自动开启的实现其实是导入了一些自动配置的 bean, 这些导入的配置方式主要分为以下三种类型.第一类:直接导入配置类@Target(ElementType.TYPE)@R...原创 2018-09-29 14:21:44 · 1399 阅读 · 0 评论 -
组合注解和元注解
从 spring 2.0 开始为了响应 jdk1.5推出的注解功能, spring 开始大量加入注解来替代xml 配置.元注解:即可注解到其他注解的注解.组合注解:即被注解的注解.示例:组合注解:package com.pangu.annotation;import java.lang.annotation.Documented;import java.lang.ann...原创 2018-09-28 23:53:21 · 1563 阅读 · 0 评论 -
Spring 之条件注解
根据条件注解 @Conditional 在不同条件下创建不同的 bean.判断条件定义:package com.pangu.conditional;import org.springframework.context.annotation.Condition;import org.springframework.context.annotation.Conditio...原创 2018-09-28 22:43:41 · 1185 阅读 · 0 评论 -
Spring 之多线程
Spring 通过任务执行器 TaskExecutor 来实现多线程和并发编程, 使用 ThreaPoolTaskExector 可实现一个基于线程池的 TaskExecutor. 而实际开发任务一般非阻碍的,即异步.所以我们要在配置类中通过 @EnableAsync 开启对异步任务的支持.并通过在实际执行的 bean 的方法中使用 @Async 注解来声明是一个异步任务.配置类:...原创 2018-09-11 23:13:53 · 1118 阅读 · 0 评论 -
Spring 目录帖
Spring 概述 Spring 之 Java 配置 Spring AOP 注解式和方法规则拦截 Spring 之 Bean 的 Scope Spring 之 el 表达式和资源调用 Spring 之 Bean 的初始化和销毁 Spring 之 Profile Spring 之 Event Spring 之 Spring Aware Spring 之多线程 Spring 之条件...原创 2018-08-23 10:37:21 · 1847 阅读 · 1 评论 -
Spring 之 Bean 的 Scope
Bean 的 ScopeScope 描述的是 Spring 容器如何新建 Bean 的实例的. Spring 的 Scope 有以下几种,通过 @Scope 注解来实现.Singleton: 一个 Spring 容器中只有一个 Bena 的实例,此为 Spring 的默认配置,全容器共享一个实例. Prototype: 每次使用新建一个 Bean 的实例. Request: Web...原创 2018-08-23 10:34:02 · 395 阅读 · 0 评论 -
Spring 概述
Spring 概述Spring 简史:第一阶段: xml 配置第二阶段: 注解配置 //:注解本身是没有功能的,就和 xml 一样.注解和 xml 都是一种元数据,元数据即解释数据的数据,这就是所谓的配置. 注解的功能来自用这个注解的地方.第三阶段: Java 配置从 spring 3.x 到现在, spring 提供了 Java 配置能力,使用 Java 配置可以...原创 2018-08-23 09:27:03 · 814 阅读 · 3 评论 -
Spring 之 Spring Aware
Spring AwareSpring 的依赖注入的最大亮点就是你所有的 Bean 对 Spring 容器的存在都是无意识的.即你可以将你的容器替换成别的容器.但是在实际的项目中,你不可避免要用到 Spring 容器本身的功能资源,这是你的 Bean 必需要意识到 Spring 容器的存在,才能调用 Spring 所提供的资源,这就是所谓的 Spring Aware.其实 Spring ...原创 2018-08-23 09:24:10 · 202 阅读 · 0 评论 -
Spring 之 Event
Event Spring 事件为 Bean 与 Bean 之间的消息通信提供了支持.当一个 Bean 处理完一个任务之后,希望另外一个 Bean 知道并能做相应的处理,这时我们就需要让另外一个 Bean 监听当前 Bean 所发送的事件. Spring 的事件需要遵循如下流程:自定义事件,继承 ApplicationEvent. 定义事件监听器,实现 Applica...原创 2018-08-23 09:21:07 · 206 阅读 · 0 评论 -
Spring 之 Profile
Profile为在不同环境下使用不同的配置提供了支持(如开发环境和生产环境下的数据库配置不同). 通过设定 Environment 的 ActiveProfiles 来设定当前 context 需要使用的配置环境.在开发中使用 @Profile 注解类或者方法,达到不同环境下选择实例化不同的 Bean. 通过设定 jvm 的 spring.profiles.active 参数来设...原创 2018-08-23 09:15:21 · 217 阅读 · 0 评论 -
Spring 之 Bean 的初始化和销毁
在实际开发中经常遇到需要在 Bean 的使用之前或者之后做一些必要的操作,Spring 对 Bean 的生命周期的操作提供了支持.在使用 Java 配置和注解配置下提供如下两种方式:Java 配置:使用 @Bean 的 initMethod 和 destroyMethod (相当于 xml 的配置的 init-method 和 destroy-method) 注解方式: 利用 JSR-250...原创 2018-08-23 09:11:50 · 347 阅读 · 0 评论 -
Spring 之 el 表达式和资源调用
Spring EL-Spring 表达式语言,支持 xml 和注解中使用表达式,类似于 JSP 和 EL 表达式语言.Spring 开发中,常涉及到各种资源调用的情况,包含普通文件、网址、配置文件、系统环境等,我们可以使用 Spring 的表达式语言实现资源的注入.注入字符 注入系统环境 注入文本( 需配置 PropertySourcesPlaceholderConfigurer B...原创 2018-08-23 09:07:38 · 487 阅读 · 0 评论 -
Spring AOP 注解式和方法规则拦截
AOP面向切面编程,Spring AOP 的存在是为了解耦, AOP 可以让一组类共享相同的行为.在 OOP 只能通过继承类和实现接口,来使代码的耦合度增加,且类集成只能为单继承,阻碍更多行为添加到同一类上, AOP 弥补了 OOP 的不足.Spring 支持 AspectJ 的注解式切面编程.使用 @AspectJ 声明一个切面 使用 @After 、@Before、@Arou...原创 2018-08-19 22:05:54 · 6726 阅读 · 1 评论 -
Spring 之 Java 配置
Java 配置是通过 @Configuration 和 @Bean 来实现的@Configuration 声明当前类是一个配置类,相当于一个 Spring 配置的 xml 文件. @Bean 注解在方法上,声明当前方法的返回值为一个 Bean.示例:public class FunctionService { public String say(String word)...原创 2018-08-19 18:18:11 · 493 阅读 · 0 评论 -
spring 使用构造器方式依赖注入
spring 向构造器传值:package com.test.spring.bean;public class TestConstructor { String a; String b; String c; String d; public TestConstructor() { // TODO Auto-generated constructor stub } publ原创 2017-04-22 17:41:44 · 710 阅读 · 0 评论 -
spring 中 init-method 和 destroy-method 的使用方式
init-method:bean 构造器执行之后执行destroy-method:bean 被销毁之前执行方式一:在 XML 中配置 <bean name="init_destroy" class="com.test.spring.bean.TestInitMethodAndDestroyMethod" init-method="initMthod" dest原创 2017-04-22 16:53:42 · 1660 阅读 · 0 评论 -
Spring 4.x 之 Test
测试是开发工作中不可缺少的部分, 单元测试只针对当前开发的类和方法进行测试,可以简单的模拟依赖来实现,对环境没有依赖.但仅仅进行单元测试是不够的,他只能验证当前类或方法是否正常工作,而我们想知道系统的各部分组合在一起是否能正常工作,这就是集成测试存在的意义. Spring 通过 Spring TestContext Framework 对集成测试提供了顶级支持.它不依赖于特定的测试框架,...原创 2018-09-29 16:34:44 · 413 阅读 · 0 评论