Java注解Annotation

注明:由于Java的注解类知识的匮乏,因此向《尚硅谷宋红康老师Java基础的课程视频》做出此学习笔记。

使用方式:把Annotation当作一个修饰符使用,用于修饰他支持的程序元素。

注解

*概念:说明程序的,给计算机看的。

*注释:用文字描述程序的,给程序员看的。

 

*定义:注解(Annotation),也叫元数据,一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类,接口,枚举是同一个层次。它可以声明在包、类、字段、方法参数等的前面,用来对这些元素进行说明,注释。

*概念描述:

**JDK1.5之后的新特性

**说明程序的

**使用注解:@注解名称

 

*作用分类:

**编写文档:通过代码里标识的元数据【注解】生成文档【生成文档doc文档】

**代码分析:通过代码里标识的元数据【注解】对代码进行分析【使用反射】

**编译检查:通过代码里标识的元数据【注解】让编译器能够实现基本的编译检查【Override】

 

 

 

 

 

示例一:生成文档相关的注解

写一个注解类并保存到桌面的任意文件夹,代码如下:

/**
 * 注解javadoc演示
 *
 * @autho    yuren
 * @version  1.2
 * @since    1.5
 */

public class person {
    /**
     * 计算两数的和
     * @param a 整数
     * @param b 整数
     * @return   两数的和
     */

    public int add(int a, int b){
        return a+b;
    }

}

在【shift+右键】打开自己创建的文档中写下的java代码,

输入命令   javadoc person.java  (这里的类应该用大写,我手快创建类的时候创建错误了)。

命令结束,产生以下文件(包括javadoc文档)

 

实现效果图:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

@author 标明开发该类模块的作者,多个作者之间使用,分割

@version 标明该类模块的版本

@see 参考转向,也就是相关主题

@since 标明从哪个版本开始增加的

@param 对方法中某参数的说明,如果没有参数就不能写

@return 对方法返回值的说明,如果方法的返回值类型是void的就不能写

@exception 对方法可能抛出的异常进行说明,如果方法没有用throws显式抛出异常就不能写其中

 

@param @return  和 @exception这三个标记都是只能用于方法的

@param的格式要求: @param    形参名     形参类型  形参说明

@return的格式要求:  @return     返回值类型    返回值说明

@exception的格式要求: @exception   异常类型   异常说明

@param   和  @exception    可以并列多个

 

这段截图中,我们看到的     下列带@的都是注解

@Description  获取指定ID的员工对象

@author shkstart

@date    2019年2月12日上午10:47:46(此时间是根据课件的时间写的,如果是自己建立的工程这里的时间将不一样)

@param      id

@return

@throws   TeamException   

这里对应着注解的解析

例如:Paramaters   这个参数的是id           对应的注解是    @param  id

Returns         相当于读取了   @return    这个注解





 

示例二:在编译时进行格式检查(JDK内置的三个基本注解)

@Override     限定重写父类方法,该注解只能用于方法

(当我们加上Override这个注解,表示我们要重写父类或接口当中的方法)

@Deprecated     用于表示所修饰的元素(类,方法等)已过时。通常是因为所修饰的结构危险或存在更好的选择

@SuppressWarning    抑制编译器警告 



 

示例三:  跟中diamond依赖性,实现替代配置文件功能

#Servlet3.0提供了注解(annotation),让我们不在需要通过web.xml 文件进行Servlet部署

说明:由于以前JavaWEB项目需要通过Servlet(这是个接口),因此实际开发中我们需要提供这个接口的实现类,

可以看到这里用的是 LgoinServlet 去继承  HttpServlet  这个类,而 HttpServlet 又去实现 Servlet 这个接口。在Servlet3.0之前,我们需要在  web.xml  文件中配置  Servlet  的信息。配置信息如下图

这里的  /login  代表我们从浏览器的网址中的   login(未注册会员要进入网站,会有登录网页),即网址里的Login匹配的就是wen.xml的这个   /login    了       

因此servlet3.0以前进入login需要写这么多东西()如下图

这段代码的意思是,客户通过输入网址,从浏览器进入javaWEB开发的某个类,实现顺序是/login>>LoginServlet(标签servlet-mapping)>>LoginServlet(标签servlet)【servlet-mapping标签与servlet标签要同名,才能实现进入,因此自定义一个名字LoginServlet】>>com.servlet.LoginServlet   

这段代码意味着,当用户从网址进入   login这个地址的时候,我相当于进入了com.servlet.LoginServlet   这个类,进而用户可以使用这个类所提供的功能了。

现在通过servlet3.0用注解的方式实现,不用再写那么多代码,现在换成     @WebServlet("/login")     就可以实现这个功能了。如下图

上图代码解析:当浏览器进入 /login  的时候,用户通过注解  @WebServlet("/login") 进入到   LoginServle 这个类

 

spring框架中关于"事务"的管理

以前需要写配置文件   指明事务的管理情况

如:isolation  (隔离级别)等,现在可以用注解来实现配置文件:

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值