12

SpringMVCフォーマッターコンバーターの違いについて説明する必要があります。

それらの主な違いについての私の理解は、フォーマッターは日付、SSN、クレジットカード番号などのエンドユーザーに表示されるデータを処理するのに対し、コンバーターは値属性などのフォームコントロールの背後に隠されたデータを処理することです。選択のオプションの。

私は正しいですか、それとも間違っていますか?誰かが2つの違いをよりよく説明するためにアドバイスやサンプルを提供できますか?

4

2 に答える 2

22

コンバーターは、ある Java 型を別の Java 型に変換するために使用されます。たとえば、からLongjava.util.Date、からIntegerへ、ColorまたはからStringDate。これは、Web 層または変換サービスを必要とするその他の層で使用できます。

フォーマッターStringは、別の Java 型に変換したり元に戻したりするために使用されます。したがって、1 つのタイプは である必要がありますString。たとえば、 を に変換するフォーマッタを作成することはできません。フォーマッタの例は、 を解析してフォーマットするためのです。さらに、フォーマッタのメッセージをローカライズできます。LongDateDateFormatterStringjava.util.DateDate

結論: フォーマッターは、Spring MVC アプリケーションなどの Web 環境に適しています。

于 2013-08-29T00:18:45.107 に答える
1

コンバータ コンポーネントは、ある型を別の型に変換するために使用されます。また、そのような変換に関連するすべてのコードを 1 つの場所に強制的に配置することによって、より明確な分離を提供するためにも使用されます。

Spring は、一般的に使用される型の組み込みコンバーターを既にサポートしており、フレームワークはカスタム コンバーターを作成するのに十分な拡張性があります。

Spring Formatters は、データがレンダリングされるディスプレイに従ってデータをフォーマットするために登場します。例として、ロケールなどに応じた日付/タイムスタンプ値の書式設定が含まれる場合があります。

于 2012-10-24T13:29:48.573 に答える