Annotation: 高级应用
本文具体解释annotation和annotation processing tool(APT)的使用。
本文列举了用于演示annotation的BRFW演示框架,演示APT的apt代码示例,并对其进行较为深度的分析。
?
Annotation实例分析
1、BRFW(beaninfo runtime framework)定义
编写一个annotation功能演示框架;顾名思义:BRFW就是在运行时取得bean信息的框架。
2、BRFW的功能
?● 源代码级annotation:在bean的源代码中使用annotation定义bean的信息
?● 运动时获取bean数据:在运行时分析bean class中的annotation,并将当前bean class中field信息取出
?● 运动时bean数据的xml绑定:将获得bean数据构造为xml文件格式展现
3、BRFW框架 BRFW主要包含以下几个类
?● Persistent类:定于用于修饰类的固有类型成员变量的annotation
?● Exportable类:定义了用于修饰class的类型的annotation
?● ExportToXml类:核心类用于完成BRFW的主要功能;将具有Exportable Annotation的bean对象转换为xml格式文本
?● AddressForTest类:被Persistent和Exportable修饰过用于测试目的的地址bean类;
??? 其中包含定义所必需的信息:国家、省级、城市、街道、门牌等
?● AddressListForTest类:被Persistent和Exportable修饰过友人通讯录bean类。
??? 其中包含了通讯册所必备的信息:友人、姓名、年龄、电话、住址(成员为AddressForTest类型的ArrayList)、备注
??? 需要说明的是电话这个bean成员变量由字符串类型组成的ArrayList类型
??? 由于朋友地址可能不唯一,故这里的住址为由AddressForTest类型组成的ArrayList
?
?