я есть JPA объект отображается как:JPA oneToMany само отображение
@Entity
@Table(name = "CATEGORIES")
public class Category {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "ID_CATEGORY")
private int idCategory;
@Column(name = "POSITION")
private int position;
@Column(name = "SEO_VALUE")
private String seoValue;
@Column(name = "VALUE")
private String value;
@Column(name = "DESCRIPTION")
private String description;
@Column(name = "SMART_CODE")
private String smartCode;
мне нужно присоединиться Категория с себя, используя поле SMART_CODE. Я попытался отображение как:
@OneToMany(mappedBy="smartCategory")
private List<Category> smartList = new ArrayList<Category>();
@ManyToOne
@JoinColumn(name="SMART_CODE", referencedColumnName="SMART_CODE",insertable=false, updatable=false)
private Category smartCategory;
, но это не работает.
У меня есть таблица Категории, у которых есть поле SMART_CODE. SMART_CODE используется для объединения записей в таблице как:
idCategory .. ... ... .. SMART_CODE
1 .. ... ... .. 2000034
2 .. ... ... .. 2000034
.................................
100 .. ... ... .. 2000034
Я хочу, чтобы отобразить свою категорию Entity, чтобы получить список категорий с одинаковым SMART_CODE (SmartList).
Может ли кто-нибудь мне помочь?
Благодаря
Carlo
'но это не works' , можете ли вы добавить более подробную информацию о том, что не работает? Любые исключения? – Chaitanya
JPA пытается найти категорию, используя smart_code как id. Мне нужен запрос вроде: smartList = select c из категории c где c.smartCode =? для каждой категории – carlj
, пожалуйста, добавьте то, что вы хотели сделать в своем посте. – Chaitanya