zoukankan      html  css  js  c++  java
  • java 自定义的注解有什么作用

    转自https://zhidao.baidu.com/question/1668622526729638507.html

    自定义注解,可以应用到反射中,比如自己写个小框架。

    如实现实体类某些属性不自动赋值,或者验证某个对象属性完整性等

    本人自己用过的验证属性值完整性:

    @Target(ElementType.FIELD)   
    @Retention(RetentionPolicy.RUNTIME)
    public @interface IgnoreProperty {
    }
    然后实体类中:
    @Target(ElementType.FIELD)   
    @Retention(RetentionPolicy.RUNTIME)
    public @interface IgnoreProperty {
    }
    然后实体类中:
    public class TarResearch implements Serializable{
     
     @IgnoreProperty
     private static final long serialVersionUID = 1L;
     
     @IgnoreProperty
    private  Integer researchId;
     
     @IgnoreProperty
     private TarUser userId;
     
     private String version;
     
     private String grade;
    ....
       } 
     
    然后action类中  
    // 验证数据完整性
     
      Class<TarResearch > userClass = TarResearch .class;
     
      Field[] field = userClass.getDeclaredFields();
     
      for (int i = 0; i < field.length; i++) {
     
       if (field[i].getAnnotation(IgnoreProperty.class) != null) {
     
        continue;
     
       }
     
       String fie = field[i].getName().substring(0, 1).toUpperCase()
     
         + field[i].getName().substring(1);
     
       Method method = userClass.getMethod("get" + fie);
     
       Object obj = method.invoke(u);
     
       if (obj == null) {
     
        sendResponseMsg(response, "数据错误");
     
        return null;
     
       }
     
      }
  • 相关阅读:
    hutool 解析 Excel
    上传文件
    Cannot construct instance of `com.**` (although at least one Creator exists)
    Java8之Optional
    java8之Stream
    java8之Lambda
    springboot+mybatis事务管理
    queryWrapper in like
    Java 组装 Tree
    JWT
  • 原文地址:https://www.cnblogs.com/lijingran/p/8586346.html
Copyright © 2011-2022 走看看