@Entity// 단일 테이블 전략을 사용한다.@Inheritance(strategy = SINGLE_TABLE)// DTYPE으로 데이터를 구분한다.@DiscriminatorColumn// 아이템만 단독으로 테이블에 저장할 일이 없다고 가정하고 추상 클래스로 선언한다.publicabstractclassItem { @Id @GeneratedValue @Column(name ="item_id")privateLong id;privateString name;privateint price;privateint stockQuantity; @ManyToMany(mappedBy ="items")privateList<Category> categories =newArrayList<>();}