我想基于端点配置自定义消息转换器。例如,我在Spring启动控制器中有以下两个端点:
@RequestMapping(value = "/all", method = RequestMethod.GET)
public ResponseEntity<Object> findAll{@PageableDefault(size = 10, page = 0) final Pageable pageable){
//code
}
@RequestMapping(value = "/object/{id}", method = RequestMethod.GET)
public ResponseEntity<Object> byId{@RequestParam("id" String id){
//code
}
Run Code Online (Sandbox Code Playgroud)
对于这两种情况,我想使用不同的HttpMessageConverter(以及对象映射器)实例。例如,我想CAMEL_CASE_TO_LOWER_CASE_WITH_UNDERSCORES为/all端点设置策略,因为它是页面响应,而不是/object。
该应用程序已经configureMessageConverters覆盖了方法,所有Objects都使用了Objectmapper bean。如果对此做出任何更改,它将适用于所有端点,这是我不希望的。
还有其他方法吗?(有点像在findAll方法本身中创建和使用自定义消息转换器)
我遇到了一个问题,我的应用程序中涉及 http 和 ftp 连接的各个地方在 java.net.SocketInputStream.socketRead0 上无限期挂起(在杀死 java 进程之前一次观察数小时)。
我想全局覆盖默认套接字超时 0,这样我就不必在启动连接的每个位置都设置它。是否有一些全局 Java 属性或方法可以调用以将默认套接字超时设置为 0 以外的值?