どのように 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`アノテーションを使用する際は、フォームオブジェクトのフィールド名と一致するように命名し、フィールドの値を確実に隠すようにしてください。

bannerAds