随笔分类 - Java--Spring
摘要:概述 当一个方法标注@Async注解时,该方法的调用将异步发生;这意味着调用者将在调用后立即返回,方法的实际执行将发生在提交给Spring TaskExecutor的任务中。 示例 示例1 使用@EnableAsync注解启用异步机制 @EnableAsync @Configuration publ
阅读全文
摘要:定义 /** * A BeanDefinition describes a bean instance, which has property values, * constructor argument values, and further information supplied by * c
阅读全文
摘要:类图 开发人员可以指定不同的前缀来创建资源路径,进而从不同位置加载资源,如下表所示: ResourceLoader Spring ResourceLoader为开发人员提供了一个统一的getResource()方法来通过资源路径检索外部资源,其中方法如下图所示: Spring core/Web提供了
阅读全文
摘要:ApplicationContext ApplicationContext是Spring的高级容器。 与BeanFactory类似,它可以加载bean定义并根据请求分发bean;此外,它还添加了很多特定的功能,比如:从属性文件解析文本消息、将应用程序事件发布到感兴趣的事件侦听器。 定义 public
阅读全文
摘要:初探getBean()方法 在使用Spring的时候,可以通过如下方式调用getBean方法来获取某个Bean: User user = context.getBean(User.class); AbstractApplicationContext中定义了一系列getBean方法,代码如下: //
阅读全文
摘要:Spring框架的主要特性之一是IoC(控制反转)容器,它负责管理应用程序中的对象,它通过依赖注入来实现控制反转。 org.springframework.beans 和 org.springframework.context 包路径下的接口或者类为Spring IoC容器的实现提供最基本的支持。
阅读全文
摘要:Spring的整体架构 解读: 从上图可知Spring核心容器由Core、Bean、Context和SpEL几个模块组成,相关解读见下表: Spring AOP Spring集成了AspectJ作为AOP的特定实现。 AOP的底层原理是代理模式。 Spring MVC Spring MVC以Disp
阅读全文
摘要:CriteriaQuery 源码定义 CriteriaQuery定义在包路径javax.persistence.criteria下,其定义如下: /** * The <code>CriteriaQuery</code> interface defines functionality that is
阅读全文
摘要:源码 在Spring Data JPA相关的文章[地址]中提到了有哪几种方式可以构建Specification的实例,该处需要借助CriteriaBuilder,回顾一下Specification中toPredicate方法的定义,代码如下: /** * Creates a WHERE clause
阅读全文
摘要:源码 在前面关于SimpleJpaRepository的文章[地址]中可以得知,SimpleJpaRepository间接实现了JpaSpecificationExecutor接口,本文就详细探究一下该接口。 JpaSpecificationExecutor的定义如下: /** * Interfac
阅读全文
摘要:源码 SimpleJpaRepository的定义如下: /** * Default implementation of the {@link org.springframework.data.repository.CrudRepository} interface. This will offer
阅读全文