Hibernate を使用して、注釈を介して巨大なテーブルを含むレガシー スキーマにオブジェクトをマップしています (XML ファイルは 2003 年なので)。これらのクラスは非常に大きいので、時折タイプミスをすることがありますが、Hibernate は実行しようとするまでわざわざタイプミスを教えてくれません。
これが私が試したことです:
1: hbm2ddl.auto を「検証」に設定:
これにより、クラスの String 値が に対して検証されvarchar(255)
ます。データベースの列タイプの多くは であるためCHAR(n)
、これは爆発します。columnDefinition="CHAR(n)"
数百のマッピングに追加する必要があります。
2: Unitils の使用。
これらを Maven 経由でインポートすると、コードの他のセクションを爆破する依存ライブラリのインポートが発生します。例: 私は Hibernate 4.1 を使用していますが、Unitils は Hibernate 3.2.5 をインポートし、UserType を爆破しました。
それで、これを行う別の方法はありますか?Unitils コードを調べて、必要なセクションを単純にヤンクできるかどうかを確認しました (1 つのメソッドだけが必要な場合は、apache-commons でかなり頻繁にヤンクを行います) が、それは簡単な作業ではありません。
Hibernate は、Spring アプリケーション コンテキストを介して構成されます。
そこに何かアイデアはありますか?