spring
文章平均质量分 61
spring
skinX
这个作者很懒,什么都没留下…
展开
-
spring cache
使用spring cache 时,需开启缓存注解使用缓存,还需要配置cacheManagercacheManager有很多实现类,对应不同的缓存框架spring cache 提供了几个注解,用于设置缓存@Cacheable该注解会将方法的返回值进行缓存,下次调用该方法,会取缓存中数据该注解可以放在类名上,也可以放在方法上value:指定CacheName,cacheNames:等同于valuekey:指定缓存keykeyGenerator:指定缓存key生成策略cacheManag原创 2022-07-03 14:23:49 · 259 阅读 · 1 评论 -
spring-定时任务
spring开启定时任务,需要注解EnableSchedulingImport注解中,有SchedulingConfiguration这个SchedulingConfiguration,会创建beanPostProcessor–ScheduledAnnotationBeanPostProcessor原创 2022-03-08 11:12:35 · 243 阅读 · 0 评论 -
spring aop
解析xml,解析aop标签,aop解析会进入parseCustomElement方法根据namespaceurl找到标签解析器configureAutoProxyCreator方法会注册org.springframework.aop.config.internalAutoProxyCreator ,取出aop标签中的属性,对beanDefinition进行属性添加。获取子标签,分别对pointcut、advisor,aspect进行解析解析aspect private void pars原创 2021-12-13 21:15:33 · 310 阅读 · 2 评论 -
spring bean的实例化
bean的实例化是spring中重要的一环,涉及了bean的生命周期。实例化方法主要在preInstantiateSingletons中首先获取beanName遍历beanName,根据beanName查出beanDefinition如果bean是单例,并且未设置懒加载,并且是不能被实例化的,则继续下面的判断:如果bean是factoryBean,则通过&+beanName 实例化并获取bean。如果不是,则通过beanName 实例化并获取bean实际获取bean的方法如果na原创 2021-12-05 15:55:57 · 1523 阅读 · 1 评论 -
spring invokeBeanFactoryPostProcessors方法
invokeBeanFactoryPostProcessors是spring容器的后置处理方法,beanFactoryPostProcessors是容器中已有的处理器,也就是这个list遍历这个list,如果processor是BeanDefinitionRegistry类型,调用其postProcessBeanDefinitionRegistry方法,并将该processor放入registryProcessors,否则processor仅是放入regularPostProcessors这原创 2021-11-29 22:27:46 · 355 阅读 · 0 评论 -
spring BeanDefinition加载过程(xml)
注:1.本文内容不是很细致,只能帮助大家了解个大概流程-_-||2.方法里会删减无关的内容spring beanDefinition加载,在方法obtainFreshBeanFactory中完成refreshBeanFactory方法createBeanFactory:创建容器,会获取parent容器作为参数传入loadBeanDefinition:先创建beanDefinitionReader获取resource,也就是配置的xml文件将resource读入,解析成document原创 2021-11-27 14:07:02 · 558 阅读 · 0 评论 -
spring boot
1.导入xml配置文件,可以用@ImportResource注解2.可以在@SpringBootApplication,@EnableAutoConfiguration注解中排除自动配置类@SpringBootApplication(exclude={DataSourceAutoConfiguration.class})@SpringBootApplication(excludeName={类的全路径名})devtools添加maven依赖<dependencies> &l原创 2021-10-08 23:36:34 · 85 阅读 · 0 评论 -
dispatcherServlet
dispatchservlet执行流程获取请求对应的HandlerExecutionChain,并向其中添加拦截器 mappedHandler = getHandler(processedRequest); /* ** 去handlermapping中找到HandlerExecutionChain,根据路径 */ protected HandlerExecutionChain getHandler(HttpServletRequest request) throws Exception {原创 2021-06-20 22:31:37 · 84 阅读 · 0 评论 -
spring resource
resourcepublic interface InputStreamSource { //定位并打开资源,返回一个用于读取资源的InputStream。预期每次调用都会返回一个新的InputStream。调用者负责关闭流 InputStream getInputStream() throws IOException;}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~public interfa原创 2021-01-27 23:43:00 · 67 阅读 · 0 评论