【发布时间】:2019-10-17 00:31:07
【问题描述】:
我有以下弹簧控制器代码:
@Controller
@RequestMapping("/")
public class MainController {
UserService user = new UserService();
@GetMapping("/home")
public String goFirstPage(){
user.showUserName(new User("Mike"));
return"firstpage";
}
}
以及以下方面:
@Aspect
@Component
@Order(1)
public class UserAspect {
@Before("execution(public void com.project.aopmaven.services.UserService.showUserName(..))")
public void logUser(){
System.out.println("Logging User");
}
}
它不起作用,没有显示“Logging User”消息(甚至在控制器类中实例化了 UserService 对象)。但是,当我们将 @Autowired 注释添加到控制器中定义的 UserService 时,它就可以工作了!
@Autowired
UserService user = new UserService();
谁能解释一下?
【问题讨论】:
标签: java spring-mvc aop autowired spring-aop