猿问

如何获取@UniqueConstraint 列名

这是我的实体。


@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();

但我想动态命名。如何获取 uniq 列名?


MYYA
浏览 183回答 2
2回答

撒科打诨

你应该这个。columnName = selectedModel.getClass()                             .getDeclaredField(                                     selectedModel.getClass().getDeclaredAnnotation(Table.class).uniqueConstraints()[0]                                             .columnNames()[0])                             .getDeclaredAnnotation(Column.class).columnDefinition();

互换的青春

我不知道我是否理解你的问题,但如果你想通过反思得到它myClass.getClass().getDeclaredAnnotation(Table.class).uniqueConstraints()[0].columnNames()[0]
随时随地看视频慕课网APP

相关分类

Java
我要回答