1 Ioc : 依赖注入,对象的创建与维护都由Spring容器帮助生成与管理,解除耦合性,耦合性降低。
2 AOP: 切面编程,通过AOP实现添加某个功能再方法上,功能与方法互不影响。
AOP使用流程;
- 先声明一个需要使用的注解:
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface AdminOnly {
}
复制代码
- 拦截这个注解的拦截类
@Aspect
@Component
public 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;
}
复制代码