Как получить имя столбца @UniqueConstraint - PullRequest
0 голосов
/ 07 ноября 2018

Это моя сущность.

@Table(uniqueConstraints = { @UniqueConstraint(columnNames = { "code" } })
@Entity
public class Product extends ExtendedModel {

    private static final long serialVersionUID = 8986161490957095179L;

    @Column(columnDefinition = "Ürün Kodu")
    private String code;

    private String name;

Я хочу получить имя столбца uniq.

Я обычно использую этот метод.

columnName = myClass.getClass().getDeclaredField("code").getDeclaredAnnotation(Column.class)
                            .columnDefinition();

Но я хочу дать имя динамически. Как получить уникальное имя столбца?

Ответы [ 2 ]

0 голосов
/ 07 ноября 2018

Вы должны это.

columnName = selectedModel.getClass()
                            .getDeclaredField(
                                    selectedModel.getClass().getDeclaredAnnotation(Table.class).uniqueConstraints()[0]
                                            .columnNames()[0])
                            .getDeclaredAnnotation(Column.class).columnDefinition();
0 голосов
/ 07 ноября 2018

Не знаю, понимаю ли я ваш вопрос, но если вы хотите получить его путем размышлений, попробуйте

myClass.getClass().getDeclaredAnnotation(Table.class).uniqueConstraints()[0].columnNames()[0]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...