3

java web开发(注解)

 1 year ago
source link: https://blog.csdn.net/feixiaoxing/article/details/127116779
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

java web开发(注解)

嵌入式-老费 已于 2022-09-30 07:25:05 修改 33

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        注解也是蛮有意思的。个人来看,它更多是一种偷懒的处理方法。一种常见的场景是这样的,如果我们希望对某一种类型的数据来做判断,那么就是在每个函数开始的位置添加各种各样的判断语句。如果数据比较少的话,尚可接受;但是数据一多,整个代码就显得非常臃肿。

        下面,我们就通过一个简单的例子,看看注解如何使用,

1、定义注解

        注解的定义比较简单,只要看看@interface这个关键字在哪,@interface后面那个变量就是注解名。在它的上方有两个元注解,一个是@Retention,一个是@Target。Retention告诉编译器,这个Range是在系统运行的时候使用的。而Target告诉编译器,这个注解用于类变量来使用的。在Range注解中,定义了两个变量,一个是min,一个是max。min的默认数值是0,max默认是255。

2、注解使用

        注解的使用非常简单。既然前面谈到Range主要用于类变量,那么直接把Range添加到对应变量的头部就可以了。如果需要修改数值的话,重新设定min和max即可。

3、注解的分析和调用



newCodeMoreWhite.png

        如上面代码所示,有两个函数,一个是test10,一个是check。前者主要是创建一个human对象,赋值之后用check函数来判断city和name本身是否符合要求。

        check函数中,首先还是通过getClass获得Class数据类型,进而通过getFields获取所有的类变量。关键的一步来了,这个时候可以通过getAnnotation获得注解Range。如果Range不为空的话,就可以通过field.get获得数据,将获得的数据与注解中的min、max进行判断,这样注解的功能不久可以实现了。

        当然注解的功能不止于此。大家在web开发中经常看到的controller注解也是一种场景。开发的时候灵活运用注解,有的时候确实可以帮助我们节省很多的工作量。代码看上去也清爽一些。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK