1

休止状態を使用して JPA との関係を作成すると、ひどく長くて厄介な列名が生成されます。
例えば。これはactionPlan_actionPlanPK、列actionPlanが を指す FK であることを意味しますactionPlanPK
DB でもう少しきれいに見えるようにするために、自分で名前を付けることができればと思います。できれば、関係を所有するエンティティ クラスにある名前だけを付けてください。

これはJPAで可能ですか?

4

2 に答える 2

3

はい。デフォルトの名前に満足できない場合は、列に独自の名前を指定することができます。たとえば、ActionPlan への参照を含むクラスでは、次のように指定できます。

@ManyToOne
@JoinColumn(name="actionplanId")
public ActionPlan getActionPlan(){

}

したがって、列名は「actionplanid」になります。

于 2008-10-20T14:03:20.600 に答える
3

この機能は JPA 仕様の一部であり、アノテーションで多くのデータベース構造に名前を付けることができます。これらには以下が含まれます:

次のようにテーブルに名前を付けます。

@Entity
@Table(name="better_table_name")
public class MyConvolutedClassName {
}

次のように列に名前を付けます。

@Column(name="better_column_name")
private Date myConvolutedDateColumn;

リレーションシップの一部である列に名前を付ける:

@ManyToOne
@JoinColumn(name="better_join_column_name")
private ClassName otherModelClass;

http://www.fnogol.de/media/ejb3.0-anno-cheat-1.2.pdfで入手できる EJB 3.0 アノテーション (JPA を含む) の優れた (最新ではありませんが) チートシートがあります。

于 2008-10-20T14:47:28.110 に答える