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; }