5.4 Web的改进
支持HTTP流和服务器发送事件。参考HTTP流。
对全局(MVC Java配置和XML命名空间)和局部(例如,@CrossOrign)的CORS配置提供了内建的支持。参考26 CORS支持。
HTTP缓存更新:
- 新的缓存创建者CacheControl,被嵌入到ResponseEntity, WebContentGenerator, ResourceHttpRequestHandler中。
- 在WebRequest中改进了ETag/Last-Modified的支持。
自定义映射注解,使用@RequestMapping作为元注解。
- AbstractHandlerMethodMapping中的公共方法用于在运行时注册和取消注册请求映射。
- AbstractDispatcherServletInitializer中的createDispatcherServlet保护方法中可以进一步自定义DispatcherServlet的实例。
- HandlerMethod作为@ExceptionHandler方法的参数,特别在@ControllerAdvice组件中非常便利。
- java.util.concurrent.CompletableFuture可以作为@Controller方法的返回类型。
- HttpHeaders支持字节范围的请求,并提供静态资源。
- @ResponseStatus检测嵌套异常。
RestTemplate中的UriTemplateHandler扩展点。
- DefaultUriTemplateHandler暴露了baseUrl属性和路径段编码选项。
- 此扩展点可嵌入到URI模板库中。
OkHTTP与RestTemplate集成。
自定义的baseUrl可以替代MvcUriComponentsBuilder中的方法。
- 序列化/反序列化的异常信息在WARN级别被记录。
- 默认的JSON前缀从“{}&&”改成了更安全的”)]}’,”中的一个(这里不明所以)。
- 新的扩展点RequestBodyAdvice和内置实现支持@RequestBody方法参数上的Jackson的@JsonView。
- 使用GSON或Jackson 2.6+时,处理器方法的返回类型被用于改进参数化类型的序列化,比如 List<Foo>。
- 引入了ScriptTemplateView作为JSR-223用于处理脚本web视图的机制,主要关注于Nashorn(JDK 8)上的JavaScript视图模板。