有沒有辦法為 Jackson 反序列化器提供來自“外部”(例如 DI 容器)的默認值,該默認值將在反序列化對象(在本例中為 tagRegistry)時使用? @JsonCreator public ExtractionRule(@JsonProperty("id") String id, TagRegistry tagRegistry) { this.id = id; this.tagRegistry = tagRegistry; }我找不到一個簡單的方法來做到這一點。
1 回答

鴻蒙傳說
TA貢獻1865條經驗 獲得超7個贊
你可以嘗試@JacksonInject。將此成員添加到 ExtractionRule 類:
@JacksonInject("tagRegistry")
private TagRegistry tagRegistry;
并在反序列化之前將 tagRegistry 注入到 ObjectMapper 中:
?InjectableValues.Std injectableValues = new InjectableValues.Std();
?injectableValues.addValue("tagRegistry", tagRegistry);
?ObjectMapper objectMapper = new ObjectMapper();
?objectMapper.setInjectableValues(injectableValues);
我還沒有嘗試在構造函數中使用它,不確定這是否有效。
添加回答
舉報
0/150
提交
取消