java annotation与AOP点滴积累

  1. spring注解,与依赖注入java

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

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

  2. java annotation工具


    元数据(Metadata)是用来描述数据自己的数据编码

    观众——电影内容spa

    实现注解须要三个条件:注解声明、使用注解的元素、操做使用注解元素的代码。.net

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

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

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

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

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

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

  4. 总结

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

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

相关文章
相关标签/搜索