我有一个类PubmedReference,除了一些公共getter和setter之外还有一个名为fromArticle的静态方法:
public class PubmedReference extends Reference {
@NotNull
@Pattern(regexp = "^[0-9]+$", message = " allows only numbers.")
private String pmid;
private String title = "";
private String authors = "";
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getAuthors() {
return authors;
}
public void setAuthors(String authors) {
this.authors = authors;
}
@BsonIgnore
public static PubmedReference fromArticle(PubmedArticle pubmedArticle) {
...
}
@BsonIgnore
public PubmedArticle getFromArticle() {
return null;
}
引起混淆的第一件事是我必须添加一个用@BsonIgnore注释的虚拟getFromArticle()。第二个尽管@BsonIgnore,Mongo Java驱动程序要求我注册PubmedArticle.class的所有POJO,就像> 20个班级,尽管如此它应该忽略它。这是驱动程序中的错误还是我错过了什么?我以为静态例程被忽略了?我使用的是MongoDB Java Driver 3.6.3。
感谢您帮助我澄清这一点。