Java 注解的概念与种类
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 注解的概念与种类的更多相关文章
- Java注解基础概念总结
注解的概念 注解(Annotation),也叫元数据(Metadata),是Java5的新特性,JDK5引入了Metadata很容易的就能够调用Annotations.注解与类.接口.枚举在同一个层次 ...
- java注解的概念理解
1. 注解(标注)概念:从字面意思理解是对被标注的对象(类,接口,枚举,注解类,方法,参数)的一个标记,有这个标记有什么用呢?就像学习中“划重点”的方式一样,被标记的对象肯定是特殊需要特别关照的对象, ...
- 框架基础——全面解析Java注解
为什么学习注解? 学习注解有什么好处? 学完能做什么? 答:1. 能够读懂别人写的代码,特别是框架相关的代码: 2. 让编程更加简洁,代码更加清晰: 3. 让别人高看一眼. spring.mybati ...
- 转!数据库连接池概念、种类、配置(DBCP\C3P0\JndI与Tomact配置连接池)
数据库连接池概念.种类.配置(DBCP\C3P0\JndI与Tomact配置连接池) 一.DBCP 连接:DBCP 连接池是 Apache 软件基金组织下的一个开源连接池实现. 需要的 java 包c ...
- Java注解教程:自定义注解示例,利用反射进行解析
Java注解能够提供代码的相关信息,同时对于所注解的代码结构又没有直接影响.在这篇教程中,我们将学习Java注解,如何编写自定义注解,注解的使用,以及如何使用反射解析注解. 注解是Java 1.5引入 ...
- 黑马程序员:Java基础总结----java注解
黑马程序员:Java基础总结 java注解 ASP.Net+Android+IO开发 . .Net培训 .期待与您交流! java注解 lang包中的基本注解 @SuppressWarnings ...
- java注解(基础)
一.认识注解 1.注解的定义: java提供了一种原程序中的元素关联任何信息和元数据的途径和方法. 2.学习注解的目的: (1)能够读懂别人写的代码,特别是框架相关的代码(框架中使用注解是非常方便的) ...
- Java注解(3)-注解处理器(编译期|RetentionPolicy.SOURCE)
注解的处理除了可以在运行时通过反射机制处理外,还可以在编译期进行处理.在编译期处理注解时,会处理到不再产生新的源文件为止,之后再对所有源文件进行编译. Java5中提供了apt工具来进行编译期的注解处 ...
- Java注解(Annotation):请不要小看我!
Java注解是一系列元数据,它提供数据用来解释程序代码,但是注解并非是所解释的代码本身的一部分.注解对于代码的运行效果没有直接影响. 网络上对注解的解释过于严肃.刻板,这并不是我喜欢的风格.尽管这样的 ...
随机推荐
- iOS 网易彩票-2框架搭建-代码重构
在上一篇中,我们基本已经把整个框架都搭建出来了,下面进行代码重构一下. 思路: 导航按钮,按下时,会变灰,那是系统自带了,通过自定义UIButton,实现按下按钮立即切换效果. MJTabBarCon ...
- (转)使用XCode6打开项目以后再用XCode5出现的问题fatal error: malformed or corrupted AST file: 'Unable to load module
使用不同版本的XCode出现的问题: fatal error: malformed or corrupted AST file: 'Unable to load module "/Users ...
- 7.8 Models -- The Rest Adapter
一.概述 默认的,store将会使用 DS.RESTAdapter来加载和存储records.这个RESTAdapter假定URLS和JSON关联每一个model是约定好的:这意味着,如果你遵循这个规 ...
- HashMap(JDK1.9)详解
一.HashMap的概念. 1.HashMap类的继承实现关系如下:因此HashMap的功能有:可序列化.可克隆等功能. 2.HashMap的数据结构:数组+链表+红黑树. 3.键值对的存储方案:第一 ...
- yii2模板
GridView 小部件在开发中常用的功能及技巧.持续更新中.... 数据网格或者说 GridView 小部件是Yii中最强大的部件之一.它有一个属性名叫 dataProvider ,这个属性能够提供 ...
- Hive 数据类型转换
在Hive的日常使用中经常会遇到需要对字段进行数据类型转换的情况.Hive中的数据类型转换包括隐式转换(implicit conversions)和显式转换(explicitly conversion ...
- wamp下配置多域名和访问路径的方法
wamp下配置多域名和访问路径的方法 1.到安装目录下,打开配置httpd.confD:\wamp\bin\apache\Apache2.2.21\conf\httpd.conf也可以通过wamp图标 ...
- 自己封装的ajax
/** * ITCAST WEB * Created by lsy on 2016/5/24. */ /* * 1. 请求的类型 type get post * 2. 请求地址 url * 3. 是异 ...
- MATERIALIZED VIEW-物化视图
Oracle的实体化视图提供了强大的功能,可以用在不同的环境中,实体化视图和表一样可以直接进行查询.实体化视图可以基于分区表,实体化视图本身也可以分区. 主要用于预先计算并保存表连接或聚集等耗时较多 ...
- Removing bad blocks from the USB drive with fsck
An easy way to repair a flash drive, or any drive really, is to use the fsck tool. This tool is grea ...