refactor: 简化代码 #3

Merged
ZhouXY108 merged 1 commits from refactor/refactor-code into dev 2025-05-09 16:19:30 +08:00
2 changed files with 10 additions and 21 deletions

View File

@ -26,6 +26,7 @@ import java.util.OptionalInt;
import java.util.OptionalLong; import java.util.OptionalLong;
import java.util.function.Function; import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import java.util.stream.Stream;
import xyz.zhouxy.plusone.commons.collection.CollectionTools; import xyz.zhouxy.plusone.commons.collection.CollectionTools;
import xyz.zhouxy.plusone.commons.util.ArrayTools; import xyz.zhouxy.plusone.commons.util.ArrayTools;
@ -49,30 +50,18 @@ public class ParamBuilder {
if (ArrayTools.isEmpty(params)) { if (ArrayTools.isEmpty(params)) {
return EMPTY_OBJECT_ARRAY; return EMPTY_OBJECT_ARRAY;
} }
return Arrays.stream(params) return buildParamsFromStream(Arrays.stream(params));
.map(param -> {
if (param instanceof Optional) {
return OptionalTools.orElseNull((Optional<?>) param);
}
if (param instanceof OptionalInt) {
return OptionalTools.toInteger((OptionalInt) param);
}
if (param instanceof OptionalLong) {
return OptionalTools.toLong((OptionalLong) param);
}
if (param instanceof OptionalDouble) {
return OptionalTools.toDouble((OptionalDouble) param);
}
return param;
})
.toArray();
} }
public static Object[] buildParams(final Collection<?> params) { public static Object[] buildParams(final Collection<?> params) {
if (CollectionTools.isEmpty(params)) { if (CollectionTools.isEmpty(params)) {
return EMPTY_OBJECT_ARRAY; return EMPTY_OBJECT_ARRAY;
} }
return params.stream() return buildParamsFromStream(params.stream());
}
private static Object[] buildParamsFromStream(Stream<?> stream) {
return stream
.map(param -> { .map(param -> {
if (param instanceof Optional) { if (param instanceof Optional) {
return OptionalTools.orElseNull((Optional<?>) param); return OptionalTools.orElseNull((Optional<?>) param);

View File

@ -175,7 +175,7 @@ class SimpleJdbcTemplateTests {
Optional<Map<String, Object>> first = jdbcTemplate Optional<Map<String, Object>> first = jdbcTemplate
.queryFirst("SELECT * FROM sys_account WHERE id = ?", buildParams(id)); .queryFirst("SELECT * FROM sys_account WHERE id = ?", buildParams(id));
log.info("first: {}", first); log.info("first: {}", first);
assertTrue(!first.isPresent()); assertFalse(first.isPresent());
} }
// 没有异常提交事务 // 没有异常提交事务
@ -208,7 +208,7 @@ class SimpleJdbcTemplateTests {
Optional<Map<String, Object>> first = jdbcTemplate Optional<Map<String, Object>> first = jdbcTemplate
.queryFirst("SELECT * FROM sys_account WHERE id = ?", buildParams(id)); .queryFirst("SELECT * FROM sys_account WHERE id = ?", buildParams(id));
log.info("first: {}", first); log.info("first: {}", first);
assertTrue(!first.isPresent()); assertFalse(first.isPresent());
} }
// 返回 false回滚 // 返回 false回滚
@ -223,7 +223,7 @@ class SimpleJdbcTemplateTests {
Optional<Map<String, Object>> first = jdbcTemplate Optional<Map<String, Object>> first = jdbcTemplate
.queryFirst("SELECT * FROM sys_account WHERE id = ?", buildParams(id)); .queryFirst("SELECT * FROM sys_account WHERE id = ?", buildParams(id));
log.info("first: {}", first); log.info("first: {}", first);
assertTrue(!first.isPresent()); assertFalse(first.isPresent());
} }
// 返回 true提交事务 // 返回 true提交事务