Open LiJun990105 opened 5 months ago
SecureInvokeAspect里面的 List parameters = Stream.of(method.getParameterTypes()).map(Class::getName).collect(Collectors.toList()); Class::getName如果是基本类型,则后面无法反射Class.forName成功,需要包装下成包装类型,可以参考hutool的 List parameters = Stream.of(method.getParameterTypes()) .map(type -> BasicType.wrap(type).getName()) .collect(Collectors.toList());
泛型这个没有找到很好的解决方案
还有加了这个顺序后@Order(Ordered.HIGHEST_PRECEDENCE + 1)//确保最先执行,因为spring事务优先级是比较低的,可能 TransactionSynchronizationManager.isActualTransactionActive();返回false,从而无法执行后续代码
SecureInvokeAspect里面的 List parameters = Stream.of(method.getParameterTypes()).map(Class::getName).collect(Collectors.toList());
Class::getName如果是基本类型,则后面无法反射Class.forName成功,需要包装下成包装类型,可以参考hutool的
List parameters =
Stream.of(method.getParameterTypes())
.map(type -> BasicType.wrap(type).getName())
.collect(Collectors.toList());
泛型这个没有找到很好的解决方案
还有加了这个顺序后@Order(Ordered.HIGHEST_PRECEDENCE + 1)//确保最先执行,因为spring事务优先级是比较低的,可能 TransactionSynchronizationManager.isActualTransactionActive();返回false,从而无法执行后续代码