我希望避免在属性前面加@JsonProperty(“property_name”)
,而只需设置Spring WebClient构建器,将所有snake_case转换为camelCases。
这可能吗?
您可以遵循这个建议,只为一个型号应用配置。
或者您可以通过适当的属性全局设置:
spring:
jackson:
property-naming-strategy: SNAKE_CASE
您可以向模型类添加注释:
@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class)
public class Model {
String camelCase; //will be camel_case in json
}
阅读9.4.3.自定义Jackson ObjectMapper和10.A.4.JSON属性,了解我们可以从配置文件中定义多少选项。在您的情况下,您需要设置:
spring.jackson.property-naming-strategy=SNAKE_CASE
如果您只想为反序列化更改配置,您需要自定义< code>WebClient的创建方式。
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.PropertyNamingStrategy;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.codec.json.Jackson2JsonDecoder;
import org.springframework.web.reactive.function.client.ExchangeStrategies;
import org.springframework.web.reactive.function.client.WebClient;
@Configuration
public class WebClientConfiguration {
@Bean
public WebClient webClient(ObjectMapper baseConfig) {
ObjectMapper newMapper = baseConfig.copy();
newMapper.setPropertyNamingStrategy(PropertyNamingStrategy.SNAKE_CASE);
ExchangeStrategies exchangeStrategies = ExchangeStrategies.builder()
.codecs(configurer ->
configurer.defaultCodecs().jackson2JsonDecoder(new Jackson2JsonDecoder(newMapper)))
.build();
return WebClient.builder()
.baseUrl("http://localhost:8080")
.exchangeStrategies(exchangeStrategies)
.build();
}
}
参见:
我从Yahoo下载了以下数据集!金融(并做了一些基本的操纵)。我的问题是--如何将时间列转换为数据集,转换为数据集的列?
我想将我的firebase数据对象映射到我的POJO。但是,我的firebase对象属性名是snake case,例如;“user_name”。我想在我的pojo上使用camelCase,例如;“用户名” 我找到了这样一个漂亮的答案,但是,我找不到任何关于snake_case到camelCase映射的示例。 我的波乔; 我使用下面的代码行进行映射。“content”匹配没有问题(有或没有@seri
问题内容: 我用过这种方法 它正在打印“ jsonObject为null”。 “ error:nil”有什么问题吗? 我没有使用任何网址或连接方法。 我有一个json文件,我想在表中显示它。 问题答案: 请尝试以下代码。
问题内容: 如何将String [](数组)转换为Collection,例如ArrayList或HashSet? 问题答案: Arrays.asList()可以在这里解决问题。 要转换为Set,您可以执行以下操作
使用指南 - 数据报告 - 转化分析 - 如何设置转化 1、定义目标 为网站定义一个或多个目标,常见的业务目标如下: 获取客户目标:在线注册、创建账户等; 通过激励措施或改进注册流程的易用性,提高用户注册或者开户的比例。 收入目标:在线订单、付款成功等; 简化结帐过程,清除任何影响收入的障碍;制定相应的策略来提高销量、销售金额或销售频率。 咨询目标:咨询、留言、电话等; 分析用户咨询重点和需求,改
问题内容: 我正在使用大猩猩 websocket,并且正在计划使用json进行序列化/反序列化。 假设我有这样的结构来接收传入的消息: 和 大猩猩提供接收传入的消息。传入的消息可以是Foo或Bar,但是我不能使用和收听其他消息,这很混乱。我想要像javascript 这样的东西。如果接收到Foo,则如何处理传入消息,然后将其存储到结构中;如果接收到Bar,则将其存储到结构中? 我正在解决方案正在使