![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
spring
文章平均质量分 56
好大的月亮
一只奔跑的菜鸡
展开
-
spring更加松散的获取bean的方式ObjectProvider
spring更加松散的获取bean的方式ObjectProvider原创 2023-12-09 11:07:41 · 362 阅读 · 0 评论 -
springboot下spring方式实现Websocket并设置session时间
springboot下spring方式实现Websocket并设置session时间原创 2023-09-24 21:51:15 · 1323 阅读 · 0 评论 -
spring的ThreadPoolTaskExecutor装饰器传递调用线程信息给线程池中的线程
spring的ThreadPoolTaskExecutor装饰器传递调用线程信息给线程池中的线程原创 2023-09-18 15:49:37 · 448 阅读 · 0 评论 -
spring多个aop切面之间的顺序
spring多个aop切面之间的顺序原创 2023-08-30 15:59:45 · 306 阅读 · 0 评论 -
spring按条件注入@Condition及springboot对其的扩展
spring按条件注入@Condition及springboot对其的扩展原创 2023-08-11 15:21:02 · 859 阅读 · 0 评论 -
使用SpringEL获得字符串中的表达式运算结果
使用SpringEL获得字符串中的表达式运算结果原创 2023-07-04 17:53:28 · 268 阅读 · 0 评论 -
在spring事务中扩展业务操作;spring事务同步器TransactionSynchronizationManager
在事务提交后插入业务操作;spring事务同步器TransactionSynchronizationManager原创 2023-06-23 16:24:01 · 948 阅读 · 0 评论 -
在spring容器启动后监听事件ApplicationReadyEvent
在spring容器启动后监听事件ApplicationReadyEvent原创 2023-06-01 16:05:01 · 1898 阅读 · 0 评论 -
springBoot的event事件发布/监听
springBoot的event事件发布/监听原创 2020-12-25 22:09:55 · 2527 阅读 · 1 评论 -
ConfigurationProperties将配置绑定到bean的过程分析
ConfigurationProperties将配置绑定到bean的过程分析原创 2023-01-23 22:36:45 · 1641 阅读 · 0 评论 -
BeanDefinitionRegistryPostProcessor自定义替换spring中的bean
BeanDefinitionRegistryPostProcessor自定义替换spring中的bean原创 2023-01-23 22:30:15 · 524 阅读 · 0 评论 -
spring security调用过程;及自定义改造
spring security调用过程;及自定义改造原创 2022-11-14 15:02:23 · 1083 阅读 · 0 评论 -
rabbitmq消息阻塞情况分析;自动重试处理异常
mq消息阻塞分析并处理原创 2022-07-19 13:28:40 · 4734 阅读 · 0 评论 -
模板模式demo
模板模式原创 2022-07-12 17:20:28 · 306 阅读 · 0 评论 -
装饰器模式demo
装饰器模式原创 2022-07-11 22:06:41 · 146 阅读 · 0 评论 -
springmvc自定义参数解析器/类型转换器
springmvc自定义参数解析器/类型转换器原创 2022-06-16 09:20:30 · 1721 阅读 · 0 评论 -
SpringMVC工作流程
springmvc执行过程原创 2022-06-06 21:29:38 · 162 阅读 · 0 评论 -
spring重试注解入门Retryable
需求场景有时候业务上需要一个简单的重试机制,这个时候写try catch递归的话容易增加代码复杂度。此时直接上spring的Retryable aop就OK了.代码demopackage com.felix.spring_cloud_one.service;import org.springframework.retry.annotation.Backoff;import org.springframework.retry.annotation.Retryable;import org.spr原创 2022-04-06 10:56:54 · 786 阅读 · 0 评论 -
spring事务管理PlatformTransactionManager及transactionTemplate
事务三大接口 org.springframework.transaction.PlatformTransactionManager 事务管理器 org.springframework.transaction.TransactionDefinition 事务的一些基础信息,如超时时间、隔离级别、传播属性等 org.springframework.transaction.TransactionStatus 事务的一些状态信息,如是否一个新的事务、是否已被标记为回滚PlatformTransact原创 2021-12-22 11:24:09 · 2459 阅读 · 0 评论 -
spring的循环依赖及使用三级缓存解决循环依赖;注入bean到spring容器中;使用@async会引起循环依赖
循环依赖原创 2021-09-26 23:28:55 · 329 阅读 · 0 评论 -
Spring的OncePerRequestFilter过滤器
Spring的OncePerRequestFilterOncePerRequestFilter顾名思义,他能够确保在一次请求只通过一次filter,而不需要重复执行大家常识上都认为,一次请求本来就只过一次,还要OncePerRequestFilter限制一次过滤干啥。其实实际上因为不同的web container对请求的过滤方式都不一样,比如在servlet-2.3中,Filter会过滤一切请求,包括服务器内部使用forward转发请求和<%@ include file="/index.jsp"原创 2021-08-26 09:19:45 · 16565 阅读 · 0 评论 -
HttpServletResponse的手动响应以及sendRedirect()方法
HttpServletResponse的手动响应HttpServletResponse实例对象获得输出流有两种方式:PrintWriter out=response.getWriter();out对象·用于输出字符流数据·ServletOutputStream os=response.getOutputStream();os用于输出字符流数据或者二进制的字节流数据浏览器和服务器端关闭response的输出流图只要有一个流被创建了,并且已经完成了流的输出那么servlet容器就会将res转载 2021-08-24 23:41:48 · 1449 阅读 · 0 评论 -
springboot下的Filter过滤器;springmvc的HandlerInterceptorAdapter拦截器;Spring的GenericFilterBean过滤器
Filter自定义Filterpackage com.fchan.espractice.filter;import org.springframework.beans.BeansException;import org.springframework.context.ApplicationContext;import org.springframework.context.ApplicationContextAware;import org.springframework.core.annot原创 2021-08-24 23:13:44 · 1964 阅读 · 0 评论 -
spring的@Transactional失效原因分析
在测试环境遇到了一次@Transactional事务失效的场景,将排查的方式记录下来。一开始以为是aop的其他代理类影响到了,但是后面取消代理类后事务还是没有生效。尝试在插入的方法中单独加@Transactional注解但是也没生效。一般我们记忆中只要抛了异常,并且这个异常确保是可以被回滚的,那么事务是可以回滚的。但是这里明显没有回滚。接下来就是打断点debug了,发现当进入方法,执行插入数据库的那一行代码之后,数据直接用navicat就可以查到了,说明压根没有开启事务,如果有事务的话方法都没结束事务也原创 2021-08-12 08:48:10 · 1316 阅读 · 0 评论 -
spring JDBC template批量插入/修改/删除
template方法总览JdbcTemplate主要提供以下五类方法:execute方法:可以用于执行任何SQL语句,一般用于执行DDL语句;update方法及batchUpdate方法:update方法用于执行新增、修改、删除等语句;batchUpdate方法用于执行批处理相关语句;query方法及queryForXXX方法:用于执行查询相关语句;call方法:用于执行存储过程、函数相关语句。batchUpdate()批量插入、更新和删除方法增删改查中其实除了查其他都属于对数据库的更新原创 2021-03-30 19:58:12 · 1280 阅读 · 0 评论 -
ajax的post请求提交的数据在后端无法用request.getParameter获取的原因分析
前台JS请求代码demo注意下方http请求的content-type是application/jsonvar _phoneId = "123456789";var closeUrl=contextPath+"/close";ajax(closeUrl,{"phoneId":_phoneId},"post",false,callbackForSessionClose,null,'json');function ajax(url,reqData,type,async,successBack,e原创 2020-11-11 11:47:27 · 1289 阅读 · 0 评论 -
spring创建bean的细致分析BeanDefinition/applicationContext/FactoryBean(Mybatis注入bean到spring中的操作)
大致流程class—>对象---->属性赋值(依赖注入)---->init(before,after)----->aware获取到生产当前bean的工厂applicationContext除了@Autowired注入获取ApplicationContext还可以通过实现ApplicationContextAware接口获取重写setApplicationContext方法@Overridepublic void setApplicationContext(Applicat原创 2020-10-18 11:03:02 · 453 阅读 · 2 评论 -
@Value之${}与#{}
@Value的值有两类${ property : default_value }application.yml中或者application.propertites文件中,比如server.port#{ obj.property? :default_value }第一个注入的是外部配置文件对应的property,第二个则是SpEL表达式对应的内容。那个default_value,就是前面的值为空时的默认值。注意二者的不同,#{}里面那个obj代表对象,一般是spring管理的bean。...原创 2020-10-09 19:58:50 · 3578 阅读 · 0 评论 -
spring中bean的具体创建过程BeanNameAware/BeanFactoryAware/InitializingBean/BeanFactoryPostProcessor
111原创 2020-09-27 17:22:03 · 342 阅读 · 0 评论 -
Spring的单例bean与原型bean的区别和创建过程
Spring官方文档中给出的bean的scope有五种singletonprototyperequestsessionglobal session实际上,Spring最基本的scope只有两种,即singleton和prototype。可以参看spring源码中的BeanDefinition.java的定义,只有这两种:String SCOPE_SINGLETON = ConfigurableBeanFactory.SCOPE_SINGLETON;String SCOPE_PROTOT转载 2020-09-11 01:24:20 · 2884 阅读 · 0 评论 -
SpringAop@Pointcut切点调用不到嵌套方法分析
切入点和通知package spring.pointcut;import org.aspectj.lang.ProceedingJoinPoint;import org.aspectj.lang.annotation.Around;import org.aspectj.lang.annotation.Aspect;import org.aspectj.lang.annotation.Pointcut;@Aspectpublic class TargetMonitor { //转载 2020-09-07 19:34:02 · 1885 阅读 · 1 评论 -
spring AOP原理分析:静态代理;JDK实现接口动态代理;Cglib继承父类代理;SpringAop的责任链模式调用
普通静态代理代理类和真实类都需要实现同一个接口接口package com.fchan.layui.represent.service;/** * 静态代理demo */public interface Subject { public void print();}真实类package com.fchan.layui.represent.service.impl;import com.fchan.layui.represent.service.Subject;public原创 2020-09-06 22:28:53 · 610 阅读 · 0 评论 -
springboot下的spring aop注解实现和execution正则实现
先上maven依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId></dependency>一个简单的增删改查service(被切入的类)package com.fchan.layui.service;import com.fasterxml.jackson.原创 2020-08-23 20:45:48 · 2630 阅读 · 1 评论 -
spring在单例模式下使用ApplicationContext.getBean和@Autowired注入的bean是同一个bean,及判断方式
ApplicationContextApplicationContext可以理解成一个包含所有bean的容器,在单例模式下当有其他地方需要使用某一个bean的时候他就取出来注入到那个地方,所有在不同地方采用@Autowired注入的同一个类型的bean都是同一个bean。ApplicationContext.getBean既然@Autowired注入的bean都是从这个ApplicationContext容器中获取的,那么在@Configuration类中注入ApplicationContext后使用原创 2020-06-10 14:36:42 · 6935 阅读 · 0 评论