1 changed files with 38 additions and 0 deletions
@ -0,0 +1,38 @@ |
|||||
|
### 代码评审 |
||||
|
|
||||
|
#### DruidFilter.java |
||||
|
|
||||
|
**改进点:** |
||||
|
1. **重复的`contains`检查:** |
||||
|
- 在`DruidFilter.java`的第53行,代码使用了两次`contains`方法来检查SQL字符串是否包含`sys_log`。如果这两个检查是独立的,那么应该分别进行。但如果它们是检查相同的目的,那么合并为一个条件检查会更清晰。 |
||||
|
```java |
||||
|
if (!sql.contains("sys_log") && !sql.contains("sys_interface_log")) { |
||||
|
log.info("[----SQL----][update][ SQL: {} ]", executeSql); |
||||
|
} |
||||
|
``` |
||||
|
- 这样做可以避免代码重复,并提高可读性。 |
||||
|
|
||||
|
2. **使用`SQLUtils.format`的必要性:** |
||||
|
- 如果`SQLUtils.format`只是简单地替换参数,那么在Java中直接使用`String.format`可能更简单和高效。检查是否有必要使用`SQLUtils.format`,因为它可能引入额外的性能开销。 |
||||
|
|
||||
|
**其他点:** |
||||
|
- 确保使用`SQLUtils.format`时,传入的`params`不是`null`,以避免`NullPointerException`。 |
||||
|
|
||||
|
#### WhiteListLogAspect.java |
||||
|
|
||||
|
**改进点:** |
||||
|
1. **注释掉的注解:** |
||||
|
- 在`WhiteListLogAspect.java`中,`@Aspect`和`@Component`注解被注释掉了。如果这个类被用于AOP和Spring容器管理,应该取消注释这些注解,以便它们能够正常工作。 |
||||
|
|
||||
|
2. **方法体缺失:** |
||||
|
- 在`doAround`方法中,没有提供实现代码。如果这个方法只是作为占位符,应该考虑将其移除或者提供一个实现,以避免误导。 |
||||
|
|
||||
|
3. **使用`logPointcut`:** |
||||
|
- 如果`@Around("logPointcut()")`被注释掉了,那么`logPointcut`切入点可能没有定义。如果需要使用它,应该确保它被定义并且正确配置。 |
||||
|
|
||||
|
**其他点:** |
||||
|
- 确保在使用`joinPoint.getArgs()`时,不会因为`joinPoint`为`null`而导致`NullPointerException`。 |
||||
|
|
||||
|
### 总结 |
||||
|
|
||||
|
这些代码改进可以提高代码的可读性、可维护性和性能。确保所有的代码变更都经过测试,以验证它们不会引入新的问题。 |
Loading…
Reference in new issue