Eclipse内からHibernateToolsをセットアップして、既存のDBに基づいてクラスを自動生成しました。表ごとに、SQLServer内の表と各列を文書化しました。そのドキュメント情報を使用して、生成されたクラスにコメントを付け、スキーマエンティティのドキュメントにデータを入力する方法はありますか?hbm.xmlマッピングファイルに配置できるメタタグがあるようですが、毎回自動生成されるので、それらを追加し直すか、新しい変更を継続的にマージする必要があります。さらに、理想的にはDBを「真実」の情報にし、この種の情報をマッピングファイルに保存しないようにします。誰かがこれが可能かどうか、もしそうならそれをどのように行うか知っていますか?ありがとう...
2 に答える
0
Hibernate ツール タスクを使用して HBM ファイルとデータベースから pojo クラスを生成すると、生成された Java クラスにドキュメントがデフォルトで追加されます。pojoTypeDeclaration ftl ファイルで確認できます。
/**
${pojo.getClassJavaDoc(pojo.getDeclarationName() + " generated by hbm2java", 0)}
*/
<#include "Ejb3TypeDeclaration.ftl"/>
${pojo.getClassModifiers()} ${pojo.getDeclarationType()} ${pojo.getDeclarationName()} ${pojo.getExtendsDeclaration()} ${pojo.getImplementsDeclaration()}
hbm ファイルに CLASS_DESCRIPTION などのメタ属性が宣言されている場合、pojo.getClassJavaDoc はドキュメントを生成します。
于 2015-07-12T13:43:18.523 に答える
0
そのドキュメント情報を使用して、生成されたクラスにコメントを付けたり、スキーマ エンティティのドキュメントを設定したりする方法はありますか?
私の知る限り、テーブルと列のコメントは、生成されたファイルの一部で使用されています。少なくとも次のhibernate-tools.jar
.
doc/tables/table.ftl
hbm/column.hbm.ftl
hbm/persistentclass.hbm.ftl
たとえば、hbm/column.hbm.ftl
次のようになります。
<#if column.isFormula()>
<formula>${column.getFormula()}</formula>
<#else>
<column name="${column.quotedName}" ${c2h.columnAttributes(column)}<#if column.comment?exists && column.comment?trim?length!=0>>
<comment>${column.comment}</comment>
</column><#else>/>
</#if>
</#if>
ただし、注釈付き POJO のテンプレートでは使用されないため、テンプレートを変更する必要があります。
于 2010-09-15T10:48:55.283 に答える