`

Annotation标注实例

阅读更多

// @Twizzle标注toggle()方法。
  @Twizzle
public void toggle() {

}
 
// 声明Twizzle标注
public @interface Twizzle {
}

标注可以包括一个关键字和值的对构成的列表:

//等同于 @Edible(value = true)
@Edible(true)
Item item = new Carrot();
 
public @interface Edible {
    boolean value() default false;
}
 
@Author(first = "Oompah", last = "Loompah")
Book book = new Book();
 
public @interface Author {
    String first();
    String last();
}

标注声明中可以用标注说明使用方式、时间和对象:

@Retention(RetentionPolicy.RUNTIME) // 该标注可以在运行时通过反射访问。 @Target({ElementType.METHOD}) // 该标注只用于类内方法。 public @interface Tweezable { }

编译器保留一组标注用于特定语法目的 (包括 @Deprecated, @Override和@SuppressWarnings等)。

标注通常用于软件框架为用户定义的类和方法提供引用外部资源的情形,如XML配置文件、事务环境等。以下是一个标注过的EJB 3.0的类:

@Entity // 声明实体类 @Table(name = "people") // 映射该类到 "people"表 class Person implements Serializable { @Id // 映射到主键 @GeneratedValue(strategy = GenerationType.AUTO) // 数据库自动生成键值 private Integer id; @Column(length = 32) // 限长32个字符 private String name; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } }

以上代码中标注不执行任何特定行为,而是为在运行时,EJB容器获得足够的信息,生成对象到关系数据库的映射。

分享到:
评论

相关推荐

    前端项目-d3-annotation.zip

    在本文中,我们将深入探讨基于前端项目的D3库的一个组件——D3-Annotation。这个项目主要专注于在SVG图形中添加注释,适用于D3版本4(D3-V4)。D3,全称Data-Driven Documents,是一个强大的JavaScript库,用于在...

    cvat线上标注平台文件

    CVAT(Computer Vision Annotation Tool)是一个开放源代码的在线计算机视觉任务标注平台,它为研究人员、数据科学家和工程师提供了一种高效、灵活的方式来标注图像和视频数据。这个平台旨在简化和加速计算机视觉...

    什么是Annotation?

    #### 五、Annotation的应用实例 假设我们需要创建一个简单的日志记录系统,可以定义一个`Loggable`注解,然后在需要记录日志的方法上使用此注解: ```java @Retention(RetentionPolicy.RUNTIME) @Target(Element...

    gate进行本体标注

    Jape(Java Annotation Patterns Engine)是Gate中的一个转换器,用于基于规则的文本标注。为了将OntoGazeteer的标注结果转化为有意义的类型,我们需要编写Jape语法规则。例如,如果希望将所有`majorType`为...

    annotation 详解

    例如,`@Override` 是一个具体的`Annotation`实例,而 `java.lang.Override` 是该实例所属的类型。这意味着在一个项目中可以有多个`@Override` 实例,但它们都属于同一个类型 `java.lang.Override`。 #### 三、具体...

    Python-ComputerVisionAnnotationToolCVAT一个基于Web的视频和图像标注工具

    CVAT(Computer Vision Annotation Tool)是一款强大的、开源的在线工具,专为计算机视觉算法提供图像和视频的标注服务。它基于Python开发,利用Web技术实现,极大地简化了数据预处理的过程,是研究人员和开发者进行...

    Spring标注(Annotation)的使用

    随着技术的发展,Spring引入了注解(Annotation),极大地简化了配置,使得代码更加简洁、易读。这篇文档将深入探讨Spring注解的使用,包括它们如何工作以及如何在实际项目中应用。 首先,让我们了解Spring的核心...

    LabelMeToolbox.zip_image annotation _labelme使用方法_labelme在线标注_交互

    6. **应用场景**:除了基础的图像分割,LabelMe 的标注数据还可以用于目标检测、语义分割、实例分割等众多计算机视觉任务。对于学术研究,创建自己的数据集进行模型训练是非常有用的。 7. **版本更新**:`...

    propbank annotation guideline1

    ### PropBank Annotation Guideline #### 一、PropBank简介 PropBank是一种用于自然语言处理(NLP)领域的语义知识库标注工具。它主要用于构建动词框架(verb frames),这些框架能够帮助理解句子中动作的发生方式...

    openseadragon标注圆形、矩形、直线、文字【完整demo】.zip

    在HTML中引入OpenSeadragon库,然后通过JavaScript初始化一个查看器实例,设置图像源和其他配置项。例如: ```html <script src="openseadragon.min.js"></script> <div id="openseadragon"></div> var viewer = ...

    testimageinfo_annotation

    "testimageinfo_annotation"项目是一个专门针对图像信息标注的实例,虽然创建者可能已忘记具体细节,但其对于初学者来说仍然具有很高的学习价值。本文将深入探讨这个主题,帮助读者理解图像标注的基本概念、流程,并...

    Python库 | pyclay-annotation_utils-0.3.4.tar.gz

    2. **COCO**:Microsoft COCO (Common Objects in Context) 是一个更为现代的标注格式,除了物体检测和分割外,还支持实例分割和关键点检测。对于多任务学习或复杂场景的理解,COCO格式的标注数据更具优势。`pyclay-...

    IOS 地图开发 标注

    本教程将深入探讨如何在iOS应用中实现地图标注功能,即在地图上添加自定义的大头针(Annotation)。 首先,我们需要了解苹果提供的地图框架——MapKit。MapKit是iOS SDK中用于展示地图、定位用户位置以及添加标注的...

    SpringMVC-Annotation

    SpringMVC是一个基于Java的轻量级Web应用框架...总的来说,"SpringMVC-Annotation"实例展示了如何利用注解在SpringMVC中构建高效、简洁的Web应用程序。通过这种方式,开发者可以更加专注于业务逻辑,而不是繁琐的配置。

    iphone上地图个性化标注

    在MapKit中,标注(Annotation)用于表示地图上的特定点。自定义标注通常需要继承MKAnnotation协议,实现其规定的方法,如`title`和`subtitle`,分别用于显示在信息窗口中的标题和副标题。同时,你需要提供`...

    4Spring自动装配——annotation resource方式

    本文将深入探讨如何通过注解(Annotation)和`@Resource`来实现自动装配,以及其背后的源码实现。 ### 一、注解驱动的自动装配 在Spring 2.5引入了注解支持后,开发者可以使用注解来声明Bean的属性、方法或构造...

    jquery+css3图像标注悬浮说明.zip

    综上所述,"jquery+css3图像标注悬浮说明.zip"可能包含一个利用jQuery进行事件处理,CSS3进行样式和动画设计,以及HTML5的新特性来构建图像标注和悬浮说明的实例。这样的示例可以帮助开发者理解如何在实际项目中整合...

    iOS原生地图开发指南续——大头针与自定义标注1

    然后在代理方法中,根据指定的annotation创建并返回CustomAnnotationView实例。 总之,iOS原生地图开发提供了强大的功能来处理地图上的标注。通过遵守MKAnnotation协议创建标注对象,结合MKAnnotationView及其子类...

    (0007)-iOS/iPhone/iPAD/iPod源代码-地图(Map)-Customized Complex Map Annotation

    地图上可能需要同时展示多个标注,这可以通过创建并添加多个`MKAnnotation`实例来实现。每个实例都可以有自己的样式和行为,从而实现复杂的信息展示。 6. **性能优化**: 当地图区域移动时,`MKMapView`会自动...

    自定制标注map ios

    最后,别忘了在`MKMapView`的代理方法`- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id)annotation`中,根据`annotation`的类型返回自定义的`MKAnnotationView`实例。 总结起来,自定义...

Global site tag (gtag.js) - Google Analytics