Spring DI
将类声明为spring管理的bean的注解:
@Component@Controller@Service@Repository这四个注解功能相同
注解 | 使用范围 |
---|
@Component | 修饰类,通用注解 |
@Controller | 修饰类,一般在web层使用 |
@Service | 修饰类,一般在service层使用 |
@Repository | 修饰类,一般在dao层使用 |
其他功能注解:
注解 | 作用 |
---|
@Value | 修饰属性,实现spring内置支持的类型的属性的注入 |
@Autowired | 修饰属性,实现自动注入(会先按id找没找到再根据类型找) |
@Qualifier(value="") | 修饰属性,明确指明id查找(spring中的) |
@Resource(name="") | 修饰属性,明确指明id查找(JDK中的) |
@Scope(value=“prototype”) | 修饰类,设置单例还是多例(默认单例) |
@Lazy | 修饰类,采用懒加载机制 |
@PostConstruct | 修饰方法,将该方法声明为初始方法,对象创建值后立即执行 |
@PreDestroy | 修饰方法,将该方法声明为销毁方法,对象销毁之前调用此方法 |
Spring AOP
注解 | 作用 |
---|
@Aspect | 修饰类,指定被修饰的类是个切面 |
@Before | 修饰方法,指定被修饰的方法为前置通知 |
@Around | 修饰方法,指定被修饰的方法为环绕通知 |
@AfterReturning | 修饰方法,指定被修饰的方法是后置通知 |
@AfterThrowing | 修饰方法,指定被修饰的方法是异常通知 |
@After | 修饰方法,指定被修饰的方法是最终通知 |
@Pointcut() | 修饰方法,一个切面中重复使用一个切点时使用 |