@Autowired注解@Configuration类支持构造函数注入。@EventListener的 condition 引用到 bean(例如@beanName.method())。@RequestMapping的的String[] path 可以在组成注解用 String path 覆盖。@Scheduled和@Schedules现在是作为元注解用来通过属性覆盖来创建自定义的组成注解。@Scheduled适当支持任何范围内的 bean。jdbc:initialize-database 和 jdbc:embedded-database 支持可配置的分离器被应用到每个脚本。
Spring 4.3 允许在一个给定的 key 并发调用时实现要同步,使得相应的值只计算一次。这是一个可选的功能,通过设置@Cacheable的新的 sync 属性来启用。此功能引入了Cache接口的一个重大更改,即get(Object key, Callable<T> valueLoader)方法已添加。
Spring 4.3 还改进了缓存抽象如下:
@beanName.method()))。ConcurrentMapCacheManager和ConcurrentMapCache现在通过一个新的storeByValue属性支持缓存实体的序列化。@Cacheable,@CacheEvict,@CachePut和@Caching现在是作为元注解用来通过属性覆盖来创建自定义的组成注解。@SendTo现在可以在类级别指定一个共同回复目标。@JmsListener 和 @JmsListeners现在是作为元注解用来通过属性覆盖来创建自定义的组成注解。@GetMapping, @PostMapping, @PutMapping, @DeleteMapping, 和 @PatchMapping 用于 @RequestMapping。
@RequestScope, @SessionScope, 和 @ApplicationScope用于 web 范围的组合注解
@RestControllerAdvice 注解是 @ControllerAdvice 和 @ResponseBody 的语义结合@ResponseStatus现在在类级别被支持,并被所有方法继承@SessionAttribute 注解用于访问 session 属性 (见例子)@RequestAttribute 注解用于访问请求属性 (见例子)@ModelAttribute 允许通过 binding=false 来避免数据绑定(见引用)ContentNegotiationManager用于媒体类型计算RestTemplate 和 AsyncRestTemplate 支持通过DefaultUriTemplateHandler 来实现严格的URI变量编码AsyncRestTemplate支持请求拦截@SendTo和@SendToUser现在可以在类级被指定为共享共同的目的地。
SpringRunner 关联于 SpringJUnit4ClassRunner@ContextConfiguration 现在将会完全忽略,如果检测到默认的 XML 文件, Groovy 脚本, 或@Configuration 类型@Transactional 测试方法不再需要public (如, 在 TestNG 和 JUnit 5)@BeforeTransaction 和 @AfterTransaction不再需要public,并且在 基于 Java 8 的接口的默认方法上声明ApplicationContext的缓存现在有界为32默认最大规模和最近最少使用驱逐策略。最大的大小可以通过设置称为spring.test.context.cache.maxSize 一个 JVM 系统属性或 Spring 配置。ContextCustomizer API 用于自定义测试 ApplicationContext 在 bean 定义加载到上下文后但在上下文被刷新前。定制工具可以在全球范围由第三方进行注册,而无需要实现一个自定义的 ContextLoader。@Sql 和 @SqlGroup 现在作为元注解通过覆盖属性来创建自定义组合注解ReflectionTestUtils现在在 set 或 get 一个字段时,会自动解开代理。原文:http://www.cnblogs.com/wozixiaoyao/p/5917858.html