类LService_impl实现了LService_int借口,lservice是spring配置中的ID
Junit测试service层代码时,应写作
lServiceInt = (LService_int)
(new ClassPathXmlApplicationContext("/applicationContext.xml")
. getBean("lService")) ;
一时马虎写成
lServiceInt = (LService_impl)
(new ClassPathXmlApplicationContext("/applicationContext.xml")
. getBean("lService")) ;
但是莫名其妙的报错java.lang.ClassCastException,也就是把类对象转化为借口实现对象不报错,而转换为自己对象报错。
后查询资料获知,在使用Spring AOP后,使用默认动态代理借口时会生成新的实现了接口的代理对象,所以必须用借口引用