有没有一种方法可以基于多个java类的属性使用注释来构建java类?

有没有一种方法可以基于多个java类的属性使用注释来构建java类?,java,spring-data-jpa,annotations,Java,Spring Data Jpa,Annotations,有一种基于多个java类的属性使用注释构建java类的方法吗 我想为SpringDataJPA项目中的所有操作和实体创建一个通用日志历史记录表,为此,我在想是否有可能在编译时获取实体的所有属性以生成这个通用实体日志类 我不太了解注释,但它用于生成源文件,所以我相信这不是一个不可能的想法 有人能给点方向吗?如果可能的话,给我指出一个好的起点会很好。或者如果已经做了符合我意图的事情 注释本身并不生成源文件——它们表示其他类的切入点以增强/丰富它们,或者作为标记接口 但是,您可以使用注释扫描仪扫描文件

有一种基于多个java类的属性使用注释构建java类的方法吗

我想为SpringDataJPA项目中的所有操作和实体创建一个通用日志历史记录表,为此,我在想是否有可能在编译时获取实体的所有属性以生成这个通用实体日志类

我不太了解注释,但它用于生成源文件,所以我相信这不是一个不可能的想法


有人能给点方向吗?如果可能的话,给我指出一个好的起点会很好。或者如果已经做了符合我意图的事情

注释本身并不生成源文件——它们表示其他类的切入点以增强/丰富它们,或者作为标记接口

但是,您可以使用注释扫描仪扫描文件并获取所有字段。 然后剩下的就是从中生成一个类。 (然后,编译它)。请注意,这是一个多步骤的过程,可能看起来有点笨拙:您创建了一个名为
GenericEntity
的文件,确保它位于正确的包中(因此从
package my.fun.project
开始,编写导入,并编写java类,所有这些都作为字符串发送到文件中。 通过扫描,您有一个带注释的字段/类,您可以获得类型和名称(如有必要,请参阅反射库),并将其写入您的文件。然后使用
}
正确关闭该类。现在,它应该是一个在加载到IDE中时不会出现编译错误的文件。 然后,这个GenericEntityGenerator必须在源代码上执行(可能使用maven插件),可能在
生成源代码
阶段执行,之后生成的类将在编译阶段编译……bob现在是你叔叔了

总之,这是一个有趣的项目