Struts2 Web アプリケーションの特定の Java クラスには、次のコード行があります。
try {
user = findByUsername(username);
} catch (NoResultException e) {
throw new UsernameNotFoundException("Username '" + username + "' not found!");
}
先生は、throw ステートメントを次のように変更するように求めています。
static final String ex = "Username '{0}' not found!" ;
// ...
throw new UsernameNotFoundException(MessageFormat.format(ex, new Object[] {username}));
しかし、この状況で MessageFormat を使用する意味がわかりません。これが単純な文字列連結より優れている点は何ですか? MessageFormat の JDK API が言うように:
MessageFormat は、言語に依存しない方法で連結されたメッセージを生成する手段を提供します。これを使用して、エンド ユーザーに表示されるメッセージを作成します。
とにかくアプリケーション ログによってのみ表示され、Web アプリケーション用のカスタム エラー ページがあるため、エンド ユーザーにこの例外が表示されるとは思えません。
コード行を変更する必要がありますか、それとも現在のものに固執する必要がありますか?