Hibernate实体注解置于成员变量与方法上的区别

时间:2022-08-14 20:38:13
之前写实体映射的时候,为了方便好看,很多时候都将映射注解放置在成员变量之上,( 注意的一点,在一个实体类中,要么将映射注解全部放在成员变量上,要么全部放在成员方法上,不能各放一部分),通过测试发现,放置在成员变量上和放置在方法上Hibernate框架注入数据时方式是不一样的,放置的成员变量上,Hiberante是通过反射拿到成员变量强行设置的值,而放置在方法上,则是通过反射取得对应的set方法进行调用赋值,而不是统一采用属性的set方法进行赋值的。因此考虑到java的包装思想,所以尽量将映射注解放置在方法上。