我需要将save()方法引入使用我的注释注释的任何类型@Persistent。此方法只是将对象保存到底层数据库中并返回对象的副本及其行 ID(例如Person personSaved = person.save())
为此,我使用 AspectJ 编写了给定的方面(PersistentObject是一个提供接口的save()方法):
public aspect PersistencyAspect {
declare parents: (@Persistent *) implements PersistentObject;
public PersistentObject PersistentObject.save() {
// perform the save operation and return a copy of this
}
}
上面的代码看起来不错。但我的问题是save()方法的返回类型。我想将它声明为由@Persistent(例如 Person)而不是PersistentObject.
您对我的问题有解决方案吗?提前致谢。