如何访问注释中的属性值?

时间:2018-11-04 08:06:22

标签: java spring-data-mongodb spring-data-rest

我有一个对应于mongo文档的模型类:

@Document(collection="GRADE_KN")
public class Grade {

    @Id
    private String id;

    private String name;
...

}

如您所见,我将文档名称硬编码为“ GRADE_KN”。我想将其移至属性文件。

例如:

application.properties 中:

mongo.collection.name=GRADE_KN

通常,我们使用@Value批注来访问属性。但这似乎在这种情况下不起作用。

但是如何使用带有@Document注释的属性。

请澄清。

1 个答案:

答案 0 :(得分:1)

我也遇到了同样的问题,显然这无法解决。 @Document和其他注释几乎在解析属性的同时完成。

所以,我们可以做的是, 具有一个超类,具有其他模型所需的所有公共属性。

然后对于所有子类模型,根据需要分配@Document和特定的集合名称。

最底行,集合名称不能动态分配。

希望这会有所帮助。干杯!!!