spring注解,与依赖注入java
(1).类级别的注解:如@Component、@Repository、@Controller 、@Service 以及JavaEE6的@ManagedBean和@Named注解,都是添加在类上面的类级别注解,Spring容器根据注解的过滤规则扫描读取注解Bean定义类,并将其注册到Spring IoC容器中。spring
(2).类内部的注解:如@Autowire、@Value、@Resource以及EJB和WebService相关的注解等,都是添加在类内部的字段或者方法上的类内部注解,SpringIoC容器经过Bean后置注解处理器解析Bean内部的注解。框架
java annotation工具
元数据(Metadata)是用来描述数据自己的数据编码
观众——电影内容spa
实现注解须要三个条件:注解声明、使用注解的元素、操做使用注解元素的代码。.net
导演、制片人、演员、上映时间、国家地区等——电影的元数据(搜索,分类)代理
AspectJ是一个面向切面的框架,它扩展了Java语言。code
AspectJ定义了AOP语法因此它有一个专门的编译器用来生成遵照Java字节编码规范的Class文件。orm
它向Java语言中加入少量新结构:切点(pointcut)、通知(Advice)、和方面(Aspect)。pointcut和Advice动态地影响程序流程,而Aspect则是对全部这些新结构的封装。
JDK动态代理 缺点:使用麻烦,不能代理类,只能代理接口
CGLIB动态代理(比较通用的解决方案)优势:能代理接口和类 缺点:不能代理final类
总结
java annotation 通常做为一种辅助途径,应用在软件框架或工具中,在这些工具类中根据不一样的 annontation注解信息采起不一样的处理过程或改变相应程序元素(类、方法及成员变量等)的行为。
Spring注解,使代码的灵活性大提升。