这是一个spring-boot-starter-web和hibernate / jpa项目。在我的一些JPA实体中,在我的equals()实现中,我需要将被比较的对象转换为具体的实体类。但是,我正在获取无法转换的代理实体,因为我认为,无论我的配置如何,它都使用接口而不是子类。换句话说,似乎就像我的proxyTargetClass = true配置被忽略了(无论该配置是否存在,我得到完全相同的错误)。
log.info(Hibernate.getClass(equalsObj)); //"com.myco.MyObject"
MyObject casted = (MyObject) equalsObj;
java.lang.ClassCastException: com.myco.MyObjectSuperClass_$$_jvstbeb_28 cannot be cast to com.myco.MyObject
在我的application.yml中,我有..
spring.aop.proxy-target-class=true
在我的java配置中,我也有..
@EnableAspectJAutoProxy(proxyTargetClass = true)
在我的pom.xml中,我有......
<dependency>
<groupId>cglib</groupId>
<artifactId>cglib</artifactId>
<version>3.2.6</version>
我可能做错了什么?
谢谢!