Java反射

/**
摘自 2021年11月19日 扫码项目、通过注解设置不同值
**/
public static TraceExport parse(Trace trace) throws IllegalAccessException {

        TraceExport traceExport = new TraceExport();
        traceExport.setProNum(trace.getProNum());
        traceExport.setTime(trace.getCreateTime());

        List<String> args = Arrays.asList(trace.getCompleteProcess().split(","));

        Field[] fields = traceExport.getClass().getDeclaredFields();
        for (Field field : fields) {
            if (field.getType().equals(Integer.class)) {
                String name = (field.getAnnotation(Excel.class)).name();
                if (args.indexOf(name) != -1) {
                    field.set(traceExport, 1);
                } else {
                    field.set(traceExport, 0);
                }
            }
        }
        return traceExport;
    }

 

posted @ 2022-03-11 10:00  南有乔木不可修思  阅读(22)  评论(0)    收藏  举报