spring
文章平均质量分 81
caixing_java
人生苦短,莫负初衷;始终相信,始终期待。
展开
-
Spring-Ioc容器加载
spring ioc源码分析ioc定义控制反转,将原先需要我们创建的对象交给统一的容器创建。核心容器- BeanFactory:String FACTORY_BEAN_PREFIX = "&";Object getBean(String name) throws BeansException;<T> T getBean(String name, @N...原创 2020-03-30 11:35:47 · 272 阅读 · 0 评论 -
重试机制(基于spring-retry)的简单使用
github地址https://github.com/caixingjava/retry-learn,如果不依赖spring框架,可基于源码进行改造,源码地址:https://github.com/spring-projects/spring-retry原创 2019-07-02 12:28:35 · 893 阅读 · 0 评论 -
Spring高级话题——Conditional
@Conditional根据满足某一个特定条件创建一个特定Bean。比方说,当某一个jar包在一个类路径下的时候,自动配置一个或多个Bean,或者只有某个Bean被创建才会创建另外一个Bean。总的来说,就是根据特定条件控制Bean的创建行为,这样我们就可以利用这个特性进行一些自动的配置。实例代码:(该实例代码是以jar包在哪个环境下运行,调用哪个类)ConditionConfig.javapac...原创 2018-04-17 17:29:06 · 240 阅读 · 0 评论 -
spring高级话题——定时任务
自spring3.1开始,其计划任务实现非常简单,首先,通过配置类注解@EnableScheduling来开启对计划任务的支持,然后在执行计划任务的方法上注解@Scheduled,声明这是一个计划任务。@Scheduled注解支持很多属性的配置,例如(cron、fixDelasy、fixRate)等实例代码:TaskSchedulerConfig.javapackage com.minivison...原创 2018-04-17 16:59:44 · 164 阅读 · 0 评论 -
Spring常用配置——SpringEvent
Spring的事件(Application Event)为Bean之间的消息通信提供了支持。当一个Bean处理完一个任务之后,希望另一个Bean知道并能做相应的处理,这是我们就需要让另外一个Bean监听当前Bean所发送的事件Spring的事件需要遵循如下流程:(1)自定义事件,继承ApplicationEvent(2)定义事件监听器,实现ApplicationListener(3)使用容器发布事...原创 2018-04-17 15:58:27 · 540 阅读 · 0 评论 -
spring常用配置——profile(不同环境的设置)
Profile为在不同环境下使用不同的配置提供了支持(例如:开发环境和生产环境的配置肯定是不同的。)此时一般通过以下几种方式来配置环境信息(1)通过设定Environment的ActiveProfiles来设定当前Context需要使用的配置环境,在开发中使用@Profile注解类或者方法,达到不同情况实例化不同的bean(2)通过设定jvm的spring.profiles.active参数来配置...原创 2018-04-16 19:15:23 · 1934 阅读 · 0 评论 -
Spring常用配置——Bean的初始化和销毁
在实际开发的时候,经常会遇到在Bean使用之前或者之后做些必要的操作,Spring对Bean的生命周期的操作提供了支持,在使用Java配置和注解配置下提供如下两种方式:(1)Java配置方式:@Bean注解中的initMethod和destroyMethod(2)注解方式:利用JSR-250的@PostConstruct和@PreDestroy例如:@Bean(initMethod = "init...原创 2018-04-16 18:01:37 · 188 阅读 · 0 评论 -
Spring常用配置——SpringEL和资源调用
SpringEL表达式语言,支持在xml和注解中使用表达式,类似于JSP的EL表达式语言。Spring开发中经常涉及调用各种资源的情况,包含普通文件、网址、配置文件、系统环境变量等,我们可以使用Spring的表达式语言实现资源的注入。Spring主要在注解@Value的参数中使用表达式。例如:@Value("#{systemProperties['os.name']}")@Value("#{ T(...原创 2018-04-16 17:37:12 · 830 阅读 · 0 评论 -
Spring常用配置——Bean的scope
Scope描述的是Spring容器如何新建Bean的示例的,Spring的scope有以下几种,通过@Scope注解来实现。(1)Singleton:一个Spring容器中只有一个Bean的实例,此为Spring的默认配置,全容器共享一个实例(2)Prototype:每次调用新建一个bean实例(3)Request:web项目中,每一个http请求新建一个bean实例(4)Session:web项...原创 2018-04-16 12:36:46 · 578 阅读 · 0 评论 -
spring基础之AOP
AOP:面向切面编程,相对于OOP面向对象编程Spring中的AOP的存在目的是为了解耦。AOP可以让一组类共享相同的行为。在OOP中只能通过继承类和实现接口,来使代码的耦合度增强,且类继承只能为单继承,阻碍更多行为添加到一组类上,AOP弥补了OOP的不足。Spring支持AspectJ的注解式切面编程。(1)使用@AspectJ声明一个切面(2)使用@After、@Before、@Around定...原创 2018-04-16 11:22:44 · 128 阅读 · 0 评论 -
spring基础配置
备注:最近复习一下spring的相关知识,准备从零-->springboot-->springcloud的一系列的使用,有浅入深,为了以后复习方便查看。1.spring框架本身的四大原则:1)使用POJO进行轻量级和最小侵入式开发2)通过依赖注入和基于接口编程实现松耦合3)通过AOP和默认习惯进行声明式编程4)使用AOP和模板(template)减少模式化代码spring所有功能的设计...原创 2018-04-16 08:39:29 · 167 阅读 · 0 评论