0
Jackson註解在序列化對象時起作用,但解析請求參數不起作用。如何配置spring mvc基於Jackson註解填充@RequestMapping參數?
沒有與傑克遜註解如下一類:
public class Role{
@JsonProperty(
value = "description",
defaultValue = "description",
required = false,
access = Access.READ_WRITE)
private String description;
@JsonProperty(
value = "code_name",
defaultValue = "permission",
required = true,
access = Access.READ_WRITE)
private String codeName;
...
}
正如你可以看到性能代號被序列爲JSON或XML CODE_NAME。例如得到一個作用是:
@RequestMapping(value = "{id}", method = RequestMethod.GET)
public Role getRole(@PathVariable id){
...
}
其結果爲:
{
"description": "..",
"code_name": ".."
}
,這是我的MVC配置:
<mvc:annotation-driven>
<mvc:message-converters register-defaults="false">
<bean
class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
<property name="objectMapper" ref="objectMapper" />
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
現在,假設有一個請求映射如下:
@RequestMapping(value = "new", method = RequestMethod.POST)
public Role create(Role role) {
...
}
我填了一個形成名爲description和code_name的字段併發送到服務器。但是,只是將描述設置爲輸入角色,並且codeName爲空。
順便說一句,如果表單字段名稱替換爲codeName,那也沒關係。
「的值是角色空」通過創建返回的一個? – efekctive