Use o mecanismo de reflexão java para realizar a verificação do parâmetro de interface [mecanismo de reflexão () 1)]

Use o mecanismo de reflexão java para realizar a verificação do parâmetro da interface

Cena de negócios:

      Existem muitas interfaces para adicionar ou modificar operações que precisam registrar informações como o id e o nome do operador. Portanto, as informações do operador precisam ser verificadas antes da interface executar o código de negócio, pois os objetos passados ​​são diferentes, mas todos possuem informações do operador, então o método de obtenção dinâmica das informações do objeto é usado para verificar os parâmetros (reflexão).
      Para economizar muito código de verificação e duplicação, a reflexão é usada aqui.
      [O código específico é o seguinte]:

public static void checkOperator(Object operator) throws Exception {
    
    
        try{
    
    
            //需要检查属性数组
            String dataNames[] = {
    
    "operatorId","operatorName"};
            Class operatorObj = operator.getClass(); //实际对象
            Field dataField = null;                  //属性
            Object obj = null;                       //属性值
            for(String dataName : dataNames){
    
    
                dataField = operatorObj.getDeclaredField(dataName); //根据属性名获取属性
                dataField.setAccessible(true);          //开启属性访问
                obj = dataField.get(operator);          //获取属性值
                if(ObjectUtils.isEmpty(obj))            //空判
                    throw new Exception();
            }
        }catch (NoSuchFieldException | IllegalAccessException e){
    
    
            throw new NoSuchFieldException("此对象不存在操作人信息!");
        } catch (Exception e){
    
    
            throw new Exception("操作人信息为空!");
        }
    }

A reflexão consome mais recursos do sistema, por isso precisa ser usada com cuidado! (Aqui está apenas um exemplo de referência para uso simples de reflexão)

Acho que você gosta

Origin blog.csdn.net/AKALXH/article/details/116520769
Recomendado
Clasificación