service实现类里有两个方法:第一个是返回dao的执行结果,第二个是一个打印方法,
配置的切点是service接口的所有方法,第二个方法能拦截到,第一个方法拦截不到。
第一个方法能从数据库返回结果。
public class UserServiceImpl implements UserServises {
@Autowired
UserDao userDao;
@Autowired
OnlyPrint onlyPrint;
@Override
public User getUserById(int id) {
return userDao.getUserById(id);
}
@Override
public void print() {
onlyPrint.print();
}
}
AOP表达式有没有写对?
你的切点是切点是”service接口的所有方法“ ,当然只能拦截你service层的方法,你也可以考虑在dao层做一个切面
能用上AOP很羡慕
可能是你的配置文件写的有问题吧,如果你不区分service里的具体方法的话,应该所有的方法都会被处理的,如果出现有的方法被拦截有的方法拦截不到,可能是你对它们分别处理了。