2017-06-01 61 views
0

jhipsterでエンティティを作成する際に、自動増分機能を使用してIDフィールドが自動的に作成されます。jhipsterのエンティティのデフォルトIDフィールドの名前と値を変更する方法

私の要件として、IDの代わりにTK_IDというIDフィールド名が必要です。また、IDフィールドの値は1から始まり、自動的に増分されます。私の場合は、値をTK001で開始し、自動インクリメントする必要があります。

エンティティの作成中に、これらの変更が行われることを願っています。これを行う方法はありますか?

要件:代わりにフィールド名 - IDの、TK_IDとして欲しい.....そして、IDフィールドの値は、TK001で始まるの代わりに、1

注意すべきである:私はDBのためのMySQLを使用していますし、ゲートウェイアプリケーション

答えて

0

あなたはHibernate/JPAジェネレータの世界に入ります。 Jhipster entity generatorを見ると、あなたが言うIncrementタイプではなく、Identity世代タイプを使用するIDが@GeneratedValueであることがわかります。

this SO answerに説明されているさまざまなタイプのIDジェネレータがあります。

ID属性自体(JHipsterによって自動的に生成されるID属性)を、意図しない結果が生じる可能性のある別の名前または生成タイプに変更することを避け、他のJHipsterの依存関係が存在する可能性があります。単に編集して管理するのが面倒すぎる。

より良い方法は、TK_IDという名前の別の属性を作成し、ID属性を取り、必要な接頭辞を追加する独自の@GenericGeneratorを作成することです。例えば新しいレコードのIDフィールドの値が3の場合は、それを取り出して接頭辞TK00を追加します。

コード例についてはthis SO answerをご覧ください。

また、あなたはTK_IDにクエリのいずれかを変換することができ、代わりにIDにそれをポイントして、あなたが望む形式に戻って結果を変換します。そうすることで、追加の属性を追加したり、エンティティの作成方法を変更したりすることはありません。

関連する問題