java annotation与AOP点滴积累

  1. spring注解,与依赖注入

    (1).类级别的注解:如@Component@Repository@Controller @Service 以及JavaEE6@ManagedBean@Named注解,都是添加在类上面的类级别注解,Spring容器根据注解的过滤规则扫描读取注解Bean定义类,并将其注册到Spring IoC容器中。

    (2).类内部的注解:如@Autowire@Value@Resource以及EJBWebService相关的注解等,都是添加在类内部的字段或者方法上的类内部注解,SpringIoC容器通过Bean后置注解处理器解析Bean内部的注解。

  2. java annotation


    元数据(Metadata)是用来描述数据本身的数据

    观众——电影内容

    实现注解需要三个条件:注解声明、使用注解的元素、操作使用注解元素的代码。

    导演、制片人、演员、上映时间、国家地区等——电影的元数据(搜索,分类)

    java annotation与AOP点滴积累_第1张图片

  3. AspectJ是一个面向切面的框架,它扩展了Java语言。

    AspectJ定义了AOP语法所以它有一个专门的编译器用来生成遵守Java字节编码规范的Class文件。

    它向Java语言中加入少许新结构:切点(pointcut)、通知(Advice)、和方面(Aspect)。pointcutAdvice动态地影响程序流程,而Aspect则是对所有这些新结构的封装。

    JDK动态代理   缺点:使用麻烦,不能代理类,只能代理接口

    CGLIB动态代理(比较通用的解决方案)优点:能代理接口和类  缺点:不能代理final

  4. 总结

    java annotation 一般作为一种辅助途径,应用在软件框架或工具中,在这些工具类中根据不同的 annontation注解信息采取不同的处理过程或改变相应程序元素(类、方法及成员变量等)的行为。

    Spring注解,使代码的灵活性大提高。





 

你可能感兴趣的:(java annotation与AOP点滴积累)