テクノロジー: - Java 1.5 または 1.6 - Hibernate 3.4
列名またはテーブル名の変更時に複数の場所で列名が更新されるのを避けるために、同じ定数ファイルが必要です。
次の質問がありますか?
考えられる解決策の 1 つは、データベース内のすべてのテーブルの列名の定数を格納する 1 つのグローバル ファイルを維持することです。お気に入り
class DbConstants { public static final String EMPLOYEE__PERFORMANCE_DESC="performance_desc"; }
上記の場合、employees はテーブルの名前で、performance_desc は列名の名前です。そのため、2 つの異なるテーブルの 2 つの定数に列名がある場合に、それらの間の衝突を回避するために、定数の名前付けには tablename__columnname 形式が使用されます。
このアプローチの問題点の 1 つは、データベースが大きくなると、このファイル内の定数が数千に増え、管理が困難になることです。その他の問題は、テーブル名が変更された場合、すべてのテーブルのプレフィックス テーブル名を変更する必要があることです。
上記の例の列の名前を performance_desc から achievements_desc に変更するとします。この場合、定数も EMPLOYEE__PERFORMANCE_DESC から EMPLOYEE__ACHIEVEMENT_DESC に変更したいと思うでしょう。この場合、列名と定数名の両方を変更する必要があったため、コードで列名の代わりに定数を直接使用することはあまり見られませんが、定数名を変更すると、屈折を使用して定数を反映できるという利点が 1 つあります。名前の変更。定数をあまり使用していないか、間違った方法で使用しているようです。
プロジェクトコードでは、テーブル列リストごとに1つのクラスを定義して、以下に示すように定数を定義しているようです。
public class tbl_Employee { public static final PERFORMANCE_DESC=performance_desc; }
これにより、テーブル名の変更がクラス名の変更のみにつながるなど、グローバル ファイルに関するいくつかの問題を解決できます。これに関する大きな問題の 1 つは、定数を定義するためだけにクラスを使用していることです。これは、適切なコーディング方法ではありません。
java 1.5または1.6で使用できるかどうか、および特定のシナリオで使用することをお勧めするかどうかは不明です。
指定された db 定数を定義するためのベスト プラクティスは何ですか?
db 定数を使用することは本当に便利ですか?
上記のようにテーブルごとに1つのクラスを使用する場合、直面する1つの問題は命名規則です。テーブルの列の定数を定義するテーブルの名前と対応するクラスの名前との関係は何ですか。
上記のケースは、テーブル名ではなく列名のみのケースをカバーしています。コードでテーブル名ではなく定数を使用したい場合があるため、テーブル名の定数を定義するためのアプローチは何ですか。
製品または関連バージョンがリリースされると、テーブル名と列名はあまり変わらないとよく言われます。テーブル名と列名の変更は、ほとんどの場合、開発段階または機能強化 (新しいバージョン) で発生します。テーブル名または列名に定数を使用しないことは強い議論ですか?
どうすれば質問をより表現しやすくすることができるか、または質問が投票されないために何が欠けているかを提案してください。