• Java Servlet 入门: 重复注解的使用。


    刚好需要用到重复注解:

    下面进行示例使用:

    1、先正常定义一个注解:

    @Retention(value = RetentionPolicy.RUNTIME)
    @Target(value = {ElementType.METHOD} )
    @Inherited
    public @interface Require {
    
        String paraName() default "";
        boolean isRequire() default true;
        String regex() default "";
        String cnParaName() default "";
        String emptyTip() default "";
        String regexTip() default "";
    }

    2、定义一个重复的注解:(名称加了个s)

    @Retention(value = RetentionPolicy.RUNTIME)
    @Target(value = {ElementType.METHOD} )
    @Inherited
    @interface Requires {
        Require[] value();
    }

    几个小注意事项:

    1、value为原生定义的数组。
    
    2、修饰符public可以改成默认包内允许,对外隐藏掉。

    3、给原来的正常定义再加上一个注解:

    @Repeatable(Requires.class) //加上了这一行。
    @Retention(value = RetentionPolicy.RUNTIME)
    @Target(value = {ElementType.METHOD} )
    @Inherited
    public @interface Require {
    
        String paraName() default "";
        boolean isRequire() default true;
        String regex() default "";
        String cnParaName() default "";
        String emptyTip() default "";
        String regexTip() default "";
    }

    使用:

        @Require(paraName="id")
        @Require(paraName="name",cnParaName="姓名")
        public void idName2() {
            write("id : "+query("id")+"<br/>");
            write("name : "+query("name")+"<br/>");
        }
  • 相关阅读:
    activiti初学
    Python微信跳一跳外挂
    Linux下将Mongodb单机升级至副本集
    Linux安装Mongodb4.2
    Python3 acm基础输入输出
    Nginx安装图片模块出错,提示fatal error: curl/curl.h
    基于Redis的分布式锁两种实现方式
    Nginx常用模块安装命令
    Nginx安装Nginx-echo模块
    Nginx使用图片处理模块
  • 原文地址:https://www.cnblogs.com/cyq1162/p/16626326.html
Copyright © 2020-2023  润新知