几乎spring-test模块的所有注解(例如,@ContextConfiguration、@WebAppConfiguration、@ContextHierarchy、@ActiveProfiles等)都可以作为元注解用于创建自定义注解并减少测试套件中的重复配置。
有效的bean定义配置文件可以通过编程解析,只要简单地实现自定义的ActiveProfilesResolver并注册@ActiveProfiles的resolver属性即可。
spring-core模块引入了新的SocketUtils类,用于扫描本地空闲的TCP和UDP服务端口。这项功能并不特定用于测试,但是当写需要socket的集成测试时非常有用,例如,启动内存中的SMTP服务器、FTP服务器、Servlet容器等的测试。
自Spring 4.0起,org.springframework.mock.web包中模拟集合以Servlet 3.0为基础。此外,一些Servlet API模拟(例如,MockHttpServletRequest,MockServletContext等)有少许增强并可通过配置改进。
Spring 4.1引入了一个更简单的方法来注册JMS器,那就是使用@JmsListener注解bean的方法。XML的命名空间也得到了增强以支持这项新特性(jms:annotation-driven),也可以通过Java配置来完全使用这项新特性(@EnableJms,JmsListenerContainerFactory),还可以使用JmsListenerConfigurer来编程式地注册器。session bean是什么
Spring 4.1还可以与4.0中引入的spring-messaging合作使用:
消息器可以拥有更弹性的签名,并且可以受益于标准的消息处理注解,比如,@Payload, @Header, @Headers, @SendTo,等等,也可以使用标准的Message代替javax.jms.Message作为方法的参数。
新的JmsMessageOperation接口可以被使用,并且允许JmsTemplate像使用Message一样操作。
最后,Spring 4.1还提供了以下各种各样的改进:
JmsTemplate支持同步的请求应答操作。
每个jms:listener元素可以指定器的优先级。
通过BackOff实现可以配置消息容器的恢复选项。
JMS 2.0支持共享消费者。
Spring 4.1支持JCache(JSR-107)注解,直接使用Spring已存在的缓存配置和基础架构即可,不需要其它的改变。
Spring 4.1也极大地改进了它的缓存策略:
可以在运行时使用CacheResolver解析缓存。因此,不再强制使用value参数来定义缓存的名称。
更多自定义的操作:缓存解析,缓存管理,键。
新的@CacheConfig注解允许通用设置在类级别共享,而不需要启用任何缓存操作。
使用CacheErrorHandler更好地处理缓存的异常。session bean是什么
Spring 4.1还为了添加putIfAbsent方法对CacheInterface做了重大改变。
新的抽象ResourceResolver, ResourceTransformer和ResourceUrlProvider扩展了已存在的基于ResourceHttpRequestHandler的资源处理程序。一些内置的实现提供了对带版本的资源URL(为了有效的HTTP缓存)、定位gzip资源、生成HTML 5 AppCache清单等的支持。参考21.16.9 资源服务。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-68644-9.html
卖的太贵了