0 امتیاز
قبل در برنامه نویسی توسط (1.1هزار امتیاز)

در JPA وقتی چند فیلد مشترک بین چند کلاس Entity را در یک کلاس دیگر تعریف می کنم و سپس هر کدام از کلاس ها از آن کلاس مشترک extends می کنند:

public class ParentEntity {

    @Column(name = "DESC")
    private String desc;

}

------

@Entity
public class User extends ParentEntity implements Serializable {

    @Id
    @GeneratedValue
    private Long id;

    @Column(name = "USER_NAME",unique = true ,nullable = false)
    private String username;

}

در این حالت وقتی سیستم را در حالت تولید خودکار schema پایگاه داده بالا می آورم، فیلد مشترک desc در جدول User ایجاد نمی شود.

1 پاسخ

+1 امتیاز
قبل توسط (1.1هزار امتیاز)
 
بهترین پاسخ

برای اینکار حتما باید کلاس ParentEntity با انوتیشن @MappedSuperclass مشخص شده باشد.

@MappedSuperclass
public class ParentEntity {
 
    @Column(name = "DESC")
    private String desc;
 
}

سوالات مشابه

0 امتیاز
1 پاسخ 371 بازدید
سوال شده 8 سال قبل در برنامه نویسی توسط Saeed Zarinfam (1.1هزار امتیاز)
+2 امتیاز
2 پاسخ 835 بازدید
سوال شده 10 سال قبل در برنامه نویسی توسط Saeed Zarinfam (1.1هزار امتیاز)
0 امتیاز
1 پاسخ 708 بازدید
0 امتیاز
1 پاسخ 1.0هزار بازدید
0 امتیاز
2 پاسخ 802 بازدید
+1 امتیاز
0 پاسخ 398 بازدید
0 امتیاز
2 پاسخ 880 بازدید
سوال شده 9 سال قبل در برنامه نویسی توسط Saeed Zarinfam (1.1هزار امتیاز)
+1 امتیاز
2 پاسخ 539 بازدید
0 امتیاز
1 پاسخ 507 بازدید
...