| 限定符和类型 | 字段和说明 |
|---|---|
protected com.fasterxml.jackson.databind.ObjectMapper |
objectMapper |
| 构造器和说明 |
|---|
JacksonAssembler() |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
execute(Object target,
Object source,
AssembleOperation operation)
根据配置完成装配操作
|
protected com.fasterxml.jackson.databind.JsonNode |
findKeyNode(com.fasterxml.jackson.databind.JsonNode target,
AssembleOperation operation)
先寻找ObjectMapper的命名规则处理后的key字段名对应的节点,若不存在,则再根据别名寻找至少一个存在的别名字段对应的节点
|
Object |
getKey(Object target,
AssembleOperation operation)
找到JsonNode中注解字段对应的节点,并返回其
JsonNode.asText()。 |
protected String |
getTranslatedKeyPropertyName(AssembleOperation operation)
将key字段名按ObjectMapper的配置转换
|
protected void |
processIfNonProperties(com.fasterxml.jackson.databind.node.ObjectNode target,
com.fasterxml.jackson.databind.JsonNode source,
AssembleOperation operation)
若无具体字段配置,则将注解字段以及别名在目标节点中对应的字段节点全部替换为从容器中获取的数据源对应节点
|
protected void |
processPropertyIfArraySourceNode(com.fasterxml.jackson.databind.node.ObjectNode target,
com.fasterxml.jackson.databind.node.ArrayNode source,
AssembleProperty property,
AssembleOperation operation)
若数据源节点为集合类型,则根据字段配置将其字段替换或追加到当前目标节点中
|
protected void |
processPropertyIfObjectSourceNode(com.fasterxml.jackson.databind.node.ObjectNode target,
com.fasterxml.jackson.databind.node.ObjectNode source,
AssembleProperty property,
AssembleOperation operation)
若数据源节点为对象类型,则根据字段配置将其字段替换或追加到当前目标节点中
|
protected void |
processPropertyIfValueSourceNode(com.fasterxml.jackson.databind.node.ObjectNode target,
com.fasterxml.jackson.databind.node.ValueNode source,
AssembleProperty property,
AssembleOperation operation)
若数据源节点为值类型,则根据字段配置将其字段替换或追加到当前目标节点中
|
protected String |
translatePropertyName(String defName)
将字段名按ObjectMapper的配置转换
|
public void execute(Object target, Object source, AssembleOperation operation)
Assemblerprotected void processIfNonProperties(com.fasterxml.jackson.databind.node.ObjectNode target,
com.fasterxml.jackson.databind.JsonNode source,
AssembleOperation operation)
target - 目标节点source - 数据源节点operation - 操作配置protected void processPropertyIfObjectSourceNode(com.fasterxml.jackson.databind.node.ObjectNode target,
com.fasterxml.jackson.databind.node.ObjectNode source,
AssembleProperty property,
AssembleOperation operation)
target - 目标节点source - 数据源节点property - 字段配置operation - 操作配置protected void processPropertyIfValueSourceNode(com.fasterxml.jackson.databind.node.ObjectNode target,
com.fasterxml.jackson.databind.node.ValueNode source,
AssembleProperty property,
AssembleOperation operation)
target - 目标节点source - 数据源节点property - 字段配置operation - 操作配置protected void processPropertyIfArraySourceNode(com.fasterxml.jackson.databind.node.ObjectNode target,
com.fasterxml.jackson.databind.node.ArrayNode source,
AssembleProperty property,
AssembleOperation operation)
target - 目标节点source - 数据源节点property - 字段配置operation - 操作配置public Object getKey(Object target, AssembleOperation operation)
JsonNode.asText()。protected com.fasterxml.jackson.databind.JsonNode findKeyNode(com.fasterxml.jackson.databind.JsonNode target,
AssembleOperation operation)
target - 目标operation - 操作配置protected String translatePropertyName(String defName)
defName - 默认属性名protected String getTranslatedKeyPropertyName(AssembleOperation operation)
operation - 默认属性名Copyright © 2022. All rights reserved.