@Component("serviceAdvice")
@Aspect//定义切面
public class ServiceAdvice {
private Logger logger=Logger.getLogger(ServiceAdvice.class);
@Pointcut("execution(* cn.bdqn.impl.*.*(..))")
public void pointcut1(){
}
//织入的位置
@Before("pointcut1()")
//添加到@Pointcut中的方法中,需要参数 JoinPoint
public void info(JoinPoint joinPoint){
String className=joinPoint.getTarget().getClass().getSimpleName();
String methodeName=joinPoint.getSignature().getName();
logger.debug("执行"+className+"=="+methodeName);
}
@AfterThrowing(pointcut="pointcut1()" ,throwing="e")
public void afterThrowing(Exception e){
String message =e.getMessage();
System.out.println(message);
}
}rvice("userService")//业务类中用Service ,相当于容器中bean
public class UserServiceImpl implements UserService {
//@Autowired //注解的内容是,@Autowired顾名思义,就是自动装配,其作用是为了消除代码Java代码里面的getter/setter与bean属性中的property。
//@Qualifier("userDao")//按照名字
//以上两种等同于@Resource(name="userDao") 名字是这里定义的@Repository("userDao")
@Resource(name="userDao")
private UserDao userdao;
@Override
public void addUser() {
// TODO Auto-generated method stub
userdao.add();
}
public UserDao getUserdao() {
return userdao;
}
public void setUserdao(UserDao userdao) {
this.userdao = userdao;
}
}
基础注解,解析
最新推荐文章于 2022-10-12 17:35:52 发布