あなたが大規模なバック オフィスの Enterprise Java アプリを編集していると想像してください。数年後には、他の人がこのアプリを探し回る可能性があります。つまり、コードをクリーンで理解しやすいものに保つ必要があります。パフォーマンスは最優先事項ではないかもしれません。
必要なモジュールがあります
- オブジェクトからデータを抽出する
- SE -> スウェーデンなどのマップ データ パラメータ [これは、現在のところ、このモジュールでのみ適用され、使用されます]
- これらの新しいパラメーターをどこかに送信します (たとえば、電子メール/xml 経由)。
小さなデータ セットの場合は、小さな HashMap を使用しますが、変換する必要があるデータのカスタム テーブルが 3 つの HashMap に成長し、一部の要素が 100 個までになりました。Translater.Javaというファイルにそれらがあります
そして、私は方法を得ました:
public String getCountryCode(String country) {
return countryCodes.get(country);
}
で開始される
countryCodes = new HashMap<String, String>() {{
put("Andorra", "AD");
put("Afghanistan", "AF");
...
}};
それは醜く見えます!しかし、私の選択は次のようです。
- 新しいデータベースにデータベース テーブルを作成します。これにより、コーダーが単に何が何にマップされているかを確認したい場合に、別の難読化レイヤーが追加されます。また、このデータを変更する必要はありません。データベースはソース コードで管理されていないため、変更する場合はコードを変更することをお勧めします。(休止状態を使用します)
- この静的データを構成ファイルとして保存します。アプリケーションは構成オプションにデータベース テーブルを使用します。これはメンテナンスに追加されます。
- 構成データベース テーブルを使用してこれを格納します。これは機能しますが、構成テーブル内の他の種類のデータは比較的小さくまとまりがあるため、残りの構成オプションを見つけるのが難しくなる可能性があります。