なぜSpring 3.2はrequestparamが「0」または「1」であることに基づいてブール値のみをマッピングするのですか
@RequestParam(required= false, defaultValue = "false") Boolean preview
プレビューは"true"
になります(requestparamが"?preview=1"
の場合のみ)
"?preview=true"
にしたいです。それ、どうやったら出来るの?
あなたの質問に効果的に答えるためには、もっと詳細が必要かもしれません。
私は次の行に沿ってSpring 3.2コードを作業しています:
@RequestMapping(value = "/foo/{id}", method = RequestMethod.GET)
@ResponseBody
public Foo getFoo(
@PathVariable("id") String id,
@RequestParam(value="bar", required = false, defaultValue = "true")
boolean bar)
{
...
}
Springは?bar=true
、?bar=1
、または?bar=yes
をtrueとして、?bar=false
、?bar=0
、または?bar=no
をfalseとして正しく解釈します。
True/falseおよびyes/noの値は大文字と小文字を区別しません。
Springはtrue、1、yesandonas true
boolean value ... check- StringToBooleanConverter 。