どのように SpringMVC アノテーションを使用してフィールド値を非表示にするか
Spring MVCでフィールド値を隠すには、`@ModelAttribute`と`@InitBinder`アノテーションを使用できます。よくある方法をご紹介します。
コントローラーのクラスに`@InitBinder`アノテーションを付けた`initBinder()`メソッドを作成し、バインダーを初期化する
@Controller
public class MyController {
@InitBinder
protected void initBinder(WebDataBinder binder) {
// 隐藏指定字段值
binder.setDisallowedFields("fieldName");
}
// 其他处理方法...
}
フィールドの値を隠蔽する必要があるフォームオブジェクトには、`@ModelAttribute`アノテーションを付与する。
public class MyForm {
private String fieldName;
// getter 和 setter 方法
@ModelAttribute("fieldName")
public String getFieldName() {
return "hidden value";
}
}
上記のコードでは、`getFieldName()`メソッドは`@ModelAttribute`アノテーションでマークされ、非表示にする必要があるフィールド値を返します。フォームが送信されると、このフィールド値は非表示になります。
`@ModelAttribute`アノテーションを使用する際は、フォームオブジェクトのフィールド名と一致するように命名し、フィールドの値を確実に隠すようにしてください。