0

Javaカスタムアノテーションを使用して、Beanプロパティのセットまたはgetメソッドにコードを追加して、ユーザーが入力した不正なHTMLからプロパティをクレンジングできますか?私は例を探していましたが、私が拡張できると感じるものを見たことがありません。

4

1 に答える 1

0

カスタム アノテーションを定義してバリデータをセッターに追加することもできますが、アノテーションなしで Bean にバリデーションを埋め込みたくない理由はありますか? 他の人があなたのコードを操作する必要がある場合、注釈のメカニズムを理解するのは難しいかもしれません。

プロパティを文字列にするのではなく、有効な HTML でのみインスタンス化できる独自の HtmlString を定義します (同等のクラスが標準ライブラリにまだ存在しないと仮定します)。次に、Bean プロパティをそのタイプにします。これにより、コンポーネントの検証の問題が解決されます。

すべての HtmlString インスタンスが有効な HTML になるように、要件に合わせて HtmlString の検証メソッドを定義します。次に、単に toString メソッドを定義します。この方法は、他の人が従うのがはるかに簡単になる可能性があります。

于 2009-05-14T13:31:24.877 に答える