我使用Spring框架(2.5)和它的AOP功能。我有一个切入点表达式,如切入点不工作的通用接口
@Pointcut("execution(public * org.springframework.batch.item.ItemReader+.read(..))")
public void itemReaderMethods() {}
凡ItemReader interface是一个春天的界面和它的签名是:
org.springframework.batch.item.ItemReader<T>
该接口有一个命名为“读取”为此,我想申请方法该提醒:该方法的签名是:
org.springframework.batch.item.ItemReader.read()
但是,当我跑我的,上面的切入点表达应用,我发现了以下异常:
java.lang.IllegalArgumentException异常:警告敌不过这种类型名称:org.springframework.batch.item.ItemReader [Xlint:invalidAbsoluteTypeName]
我的猜测是,由于ItemReader是一个通用接口,切入点没有正确匹配。如果是这样的话,我该如何编写我的切入点表达式来匹配通用接口呢?
情况并非如此。由于类型擦除,它不会区分泛型参数。 – cletus 2009-07-15 14:56:14