修改注解值,desc 但没达到预期目的 @AuditLog(value = Mod.DEVICE, desc = "批量更改设备运行状态")
public ResponseResult batchUpdateDevice(@ApiIgnore final HttpSession session, @RequestBody DeviceUpdateDto updateDto){
try { EnnAuditLog annotation = this.getClass().getAnnotation(EnnAuditLog.class); Method[] methods = this.getClass().getMethods(); Method batchUpdateDeviceRunState = this.getClass().getMethod("batchUpdateDevice",HttpSession.class,DeviceUpdateDto.class); EnnAuditLog foo = batchUpdateDeviceRunState.getAnnotation(EnnAuditLog.class); InvocationHandler h = Proxy.getInvocationHandler(foo); Field hField = h.getClass().getDeclaredField("memberValues"); hField.setAccessible(true); Map memberValues = (Map) hField.get(h); memberValues.put("desc", "更改设备运行状态"); String value = foo.value(); }catch (Exception e){ e.printStackTrace(); }
}