spring
文章平均质量分 92
Janson_Lin
前中科院开发工程师!
展开
-
深入解析SpringAOP源码
一、认识AOP及其使用 二、AOP的特点 2.1 Spring AOP 2.1.1 他是基于动态代理实现的 Spring 提供了很多的实现AOP的方式:Spring 接口方式,schema配置方式和注解的方式. 如果使用接口方式引入AOP, 就是用JDK提供的动态代理来实现. 如果没有使用接口的方式引入. 那么就是使用CGLIB来实现的 研究使用接口方式实现AOP, 目的是为了更好地理解spring使用动态代理实现AOP的两种方 2.1.2 Spring提供了对AspectJ的支持, 但只提原创 2021-04-22 14:54:50 · 635 阅读 · 0 评论 -
带你剖析spring-session续篇
上一篇文章中介绍了Spring-Session的核心原理,Filter,Session,Repository等等,传送门:带你剖析spring-session。 这篇继上一篇的原理逐渐深入Spring-Session中的事件机制原理的探索。众所周知,Servlet规范中有对HttpSession的事件的处理,如:HttpSessionEvent/HttpSessionIdListener/HttpSessionListener,可以查看Package javax.servlet 在Spring-Sess原创 2020-10-21 11:02:00 · 1321 阅读 · 0 评论 -
Spring data jpa 复杂化查询
一.Spring data jpa 简介 首先JPA是Java持久层API,由Sun公司开发,希望整合ORM技术,实现天下归一.诞生的缘由是为了整合第三方ORM框架,建立一种标准的方式,目前也是在按照这个方向发展,但是还没能完全实现。在ORM框架中,Hibernate是一支很大的部队,使用很广泛,也很方便,能力也很强,同时Hibernate也是和JPA整合的比较良好,我们可以认为J...原创 2019-10-30 14:04:26 · 362 阅读 · 0 评论 -
spring HandlerMethodArgumentResolver 自定义参数解析
自定义解析器需要实现HandlerMethodArgumentResolver接口,HandlerMethodArgumentResolver接口包含两个接口函数: public interface HandlerMethodArgumentResolver { boolean supportsParameter(MethodParameter var1); @Nullabl...原创 2019-10-28 16:59:13 · 321 阅读 · 0 评论 -
Spring MVC中的拦截器/过滤器HandlerInterceptorAdapter的使用
一般情况下,对来自浏览器的请求的拦截,是利用Filter实现的 而在Spring中,基于Filter这种方式可以实现Bean预处理、后处理。比如注入FilterRegistrationBean,然后在这个Bean上传递自己继承Filter实现的自定义Filter进入即可。 而Spring MVC也有拦截器,不仅可实现Filter的所有功能,还可以更精确的控制拦截精度。 Spring MV...原创 2019-10-28 16:44:29 · 468 阅读 · 0 评论 -
SpingBoot —— 多线程
Spring 通过任务执行器(TaskExecutor)来实现多线程和并发编程。使用ThreadPoolTaskExecutor可实现一个基于线程池的TaskExecutor。而实际开发中任务一般是非阻塞的,即异步的,所有我们在配置类中通过@EnableAsync开启对异步任务的支持,并通过在实际执行的Bean的方法中使用@Async注解来声明其是一个异步任务。 一、配置类 import o...原创 2019-10-24 08:56:46 · 225 阅读 · 0 评论 -
SpringBoot —— AOP注解式拦截与方法规则拦截
AspectJ是一个面向切面的框架,它扩展了Java语言。AspectJ定义了AOP语法,所以它有一个专门的编译器用来生成遵守Java字节编码规范的Class文件。 SpringBoot中AOP的使用方式主要有两种:注解式拦截与方法规则拦截,具体使用如下文所示。 一、创建一个简单springboot 2.0.8项目,添加aop依赖 <dependency> ...原创 2019-10-23 11:45:43 · 516 阅读 · 0 评论 -
SpringBoot -- 事件(Application Event Listener)
Spring的事件为Bean与Bean之间的消息通信提供了支持,当一个Bean处理完一个任务之后,希望另外一个Bean知道并能做相应的处理,这时我们就需要让一个Bean监听当前Bean所发送的事件。 Spring的事件需要遵循如下流程: 自定义事件,集成ApplicationEvent。 定义事件监听器,实现ApplicationListener。 使用容器发布事件。 一、自定义事件 ...原创 2019-10-23 11:32:58 · 258 阅读 · 0 评论 -
Spring学习之实例化bean的三种方式
概述 学习一下Spring IOC bean的三种实例化方式。 默认构造方法 静态工厂方法 实例工厂方法 默认构造方法实例化bean 最常用的初始化bean方式, 必须提供默认构造方法 public class Person { private String name; private Integer age; public ...原创 2019-03-11 00:52:52 · 133 阅读 · 0 评论