1 Ioc : 依赖注入,对象的创建与维护都由Spring容器帮助生成与管理,解除耦合性,耦合性降低。
2 AOP: 切面编程,通过AOP实现添加某个功能再方法上,功能与方法互不影响。
AOP使用流程;
- 先声明一个需要使用的注解:
@Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)public @interface AdminOnly { }复制代码
- 拦截这个注解的拦截类
@Aspect@Componentpublic class SecurityAspect { // 拦截AdminOnly的注解 @Pointcut("@annotation(AdminOnly)") public void AdminOnly() { } //在拦截的代码之前执行以下代码 @Before("AdminOnly()") public void check() { System.out.print("@Before------"); } }复制代码
使用注解:
//注解打上,在执行代码之前,会先执行拦截注解那里所使用的方法。 @AdminOnly public int login() {// userService.CheckAdmin(); //执行登录 return 1; }复制代码