从java中的带注释bean获取DB列名

时间:2015-01-27 08:33:08

标签: java annotations spring-annotations

在下面的bean中,注释被映射到DB列,如何获取字符串中的值。

我需要以下所有值

“TY_CD,ACTION_CD,ID”

public class SampleBO implements SQLData{

    @DbColumnMap(columnName = "TY_CD")
    private String typeCode;

    @DbColumnMap(columnName = "ACTION_CD")
    private String actionCd;

    @DbColumnMap(columnName = "ID")
    private String id;
}

2 个答案:

答案 0 :(得分:1)

你可以获得课程列表'字段

SampleBO.class.getFields()

(返回一个Field数组)并遍历数组以检查它是否具有注释。请参阅the example如果存在注释,您可以获得注释的columnName值。

答案 1 :(得分:1)

这是一个简单的例子。请注意,我搜索了" name" JPA"专栏#34; "地址"中的注释这里上课:

 public static void main(String[] args) {
     Field[] fields = Address.class.getDeclaredFields();
     for (Field field : fields) {
        Column col = field.getAnnotation(Column.class);
        if (col != null) {
            System.out.println(col.name() + "!");
        }
     }
 }