Java 注解的概念与种类

  一,什么是注解

  注解和XML文件都是常用的,对web项目进行配置性描述的方式。

  举个最简单的例子,对于一个Servlet,比如LoginServlet,采用如下方式:

  @WebServlet(urlPatterns=/Login)

  public class LoginServlet extends HttpServlet {}

  用了上面的@WebServlet注解后,无需在web.xml再进行LoginServlet相关的 配置,即可通过http://localhost:8080/项目名/Login访问到LoginServlet。

  由此可见,注解有点类似于xml配置文件,可以添加一些信息,但是又不影响Java类正常运行。注解其实就是为我们的项目提供纯Java代码提供不了的信息的。

  二,注解的优势

  那么即然都有xml配置文件这样的技术,为啥还要注解呢,感觉在干净的Java代码中添加@xxx后显得不是那么舒爽了呢。

  好的,我们来对比下注解和XML,还是以LoginServlet的使用为例:

  注解的话,我们需要在LoginServlet类添加:

  @WebServlet(urlPatterns=/Login)

  XML配置文件的话,我们需要在web.xml中添加:

  servlet

  servlet-nameLoginServlet/servlet-name

  servlet-classLoginServlet/servlet-class

  /servlet

  servlet-mapping

  servlet-nameLoginServlet/servlet-name

  url-pattern/Login/url-pattern

  /servlet-mapping

  毫无疑问,从代码量上讲注解好像占了些优势,从打开页面数上,注解只需要关注LoginServlet一个类的代码,XML方式在编辑完LoginServlet类之后还要去修改XML文件。

  这就是注解的优势哦,因为它本身就应用在类、方法、属性等元素上,所以不用再进一步描述关联元素。而且由于注解后面紧跟被注解元素,所以看起来也是一目了然,哪怕没接触过这个业务逻辑,也能注意到或者很快的去了解到。

  三,注解的种类

  Java中的注解分两类内置注解和自定义注解,很简单,就像JDK自带的类和我们的自定义类一样的道理。

  然后内置注解又分两类,一类是定义在java.lang中的常用注解,第二类是新建自定义注解使会用到的注解。其实第二类也是跟自定义注解相关的,后面会单独拿出一篇来讲自定义注解。现在重点说说常用的内置注解:

  1,@Override,该注解用来修饰方法,表示该方法覆盖父类方法。当然如果没有覆盖,就会报错。

  2,@Deprecated,使用该注解修饰的元素,会有警告信息。自定义类时对一些属性或方法采用该注解可以起到提示作用,因为用的时候代码会有道删除线。请看下图,是不是很熟悉。

  3,@SuppressWarnings,关闭编译器警告,如果觉得警告烦人,就用它吧。

  

Java 注解的概念与种类的更多相关文章

  1. Java注解基础概念总结

    注解的概念 注解(Annotation),也叫元数据(Metadata),是Java5的新特性,JDK5引入了Metadata很容易的就能够调用Annotations.注解与类.接口.枚举在同一个层次 ...

  2. java注解的概念理解

    1. 注解(标注)概念:从字面意思理解是对被标注的对象(类,接口,枚举,注解类,方法,参数)的一个标记,有这个标记有什么用呢?就像学习中“划重点”的方式一样,被标记的对象肯定是特殊需要特别关照的对象, ...

  3. 框架基础——全面解析Java注解

    为什么学习注解? 学习注解有什么好处? 学完能做什么? 答:1. 能够读懂别人写的代码,特别是框架相关的代码: 2. 让编程更加简洁,代码更加清晰: 3. 让别人高看一眼. spring.mybati ...

  4. 转!数据库连接池概念、种类、配置(DBCP\C3P0\JndI与Tomact配置连接池)

    数据库连接池概念.种类.配置(DBCP\C3P0\JndI与Tomact配置连接池) 一.DBCP 连接:DBCP 连接池是 Apache 软件基金组织下的一个开源连接池实现. 需要的 java 包c ...

  5. Java注解教程:自定义注解示例,利用反射进行解析

    Java注解能够提供代码的相关信息,同时对于所注解的代码结构又没有直接影响.在这篇教程中,我们将学习Java注解,如何编写自定义注解,注解的使用,以及如何使用反射解析注解. 注解是Java 1.5引入 ...

  6. 黑马程序员:Java基础总结----java注解

    黑马程序员:Java基础总结 java注解   ASP.Net+Android+IO开发 . .Net培训 .期待与您交流! java注解 lang包中的基本注解 @SuppressWarnings ...

  7. java注解(基础)

    一.认识注解 1.注解的定义: java提供了一种原程序中的元素关联任何信息和元数据的途径和方法. 2.学习注解的目的: (1)能够读懂别人写的代码,特别是框架相关的代码(框架中使用注解是非常方便的) ...

  8. Java注解(3)-注解处理器(编译期|RetentionPolicy.SOURCE)

    注解的处理除了可以在运行时通过反射机制处理外,还可以在编译期进行处理.在编译期处理注解时,会处理到不再产生新的源文件为止,之后再对所有源文件进行编译. Java5中提供了apt工具来进行编译期的注解处 ...

  9. Java注解(Annotation):请不要小看我!

    Java注解是一系列元数据,它提供数据用来解释程序代码,但是注解并非是所解释的代码本身的一部分.注解对于代码的运行效果没有直接影响. 网络上对注解的解释过于严肃.刻板,这并不是我喜欢的风格.尽管这样的 ...

随机推荐

  1. Postman使用js获取日期

    在用postman进行接口自动化测试的时候,某个查询接口需要使用到日期参数进行请求: 假设当前日期为2018-05-07 10:30:20 ,需要传的日期为: beginTime:2018-05-01 ...

  2. C# 实现屏幕截屏

    //屏幕宽            int iWidth = Screen.PrimaryScreen.Bounds.Width;            //屏幕高            int iHe ...

  3. excel输入数字变成特殊符号问题

    问题,在单元格里输入数字,结果变成文件夹类型的小图片或特殊符号了,原因是字体为Wingdings,将其设为Times New Roman即可

  4. VC++文件操作之最全篇

    一.剖析VC中的文件操作 各种关于文件的操作在程序设计中是十分常见,如果能对其各种操作都了如指掌,就可以根据实际情况找到最佳的解决方案,从而在较短的时间内编写出高效的代码,因而熟练的掌握文件操作是十分 ...

  5. source的简单操作

    source五部曲 git工作流:建立新功能 更改文件后,提交 点击git工作流完成新功能 点击推送 点击拉取

  6. cf249D

    这题说的是给了一个n*m的网格,然后每个格子的点事黑色的或者是白色的然后每个点如图所示    然后只能用白点和图中给出的边建立三角形然后询问三角形的个数有多少个,这样说每个三角形的边必须是图中有的边, ...

  7. Linux服务器---安装squid

    安装squid proxy就是软件代理或者代理服务器,而squid就是一种常用的proxy服务 1.安装squid [root@localhost wj]# rpm -qa | grep squid ...

  8. Mysql的序列

    Mysql的序列 Mysql自带的序列:字段设置为int,属性里面选上“自动增长”即可: 在插入数据的时候可以不插入该字段的值,mysql会自动处理:

  9. django admin 使用

    Django admin 中一些常用的设置 Django自带的后台管理是Django明显特色之一,可以让我们快速便捷管理数据.后台管理可以在各个app的admin.py文件中进行控制.以下是我最近摸索 ...

  10. visual studio扩展插件Visual Assist x给代码插入注释模板(转载)

    转载:http://www.cnblogs.com/xiongmao-cpp/p/5196555.html Visual Assist 是由Whole Tomato公司为Microsoft Visua ...