diff --git a/spring-jdbc/src/main/java/org/springframework/jdbc/core/namedparam/NamedParameterUtils.java b/spring-jdbc/src/main/java/org/springframework/jdbc/core/namedparam/NamedParameterUtils.java index a373681cd170..3c1902a90619 100644 --- a/spring-jdbc/src/main/java/org/springframework/jdbc/core/namedparam/NamedParameterUtils.java +++ b/spring-jdbc/src/main/java/org/springframework/jdbc/core/namedparam/NamedParameterUtils.java @@ -363,12 +363,12 @@ public static String substituteNamedParameters(ParsedSql parsedSql, @Nullable Sq for (int i = 0; i < paramNames.size(); i++) { String paramName = paramNames.get(i); try { - SqlParameter param = findParameter(declaredParams, paramName, i); Object paramValue = paramSource.getValue(paramName); if (paramValue instanceof SqlParameterValue) { paramArray[i] = paramValue; } else { + SqlParameter param = findParameter(declaredParams, paramName, i); paramArray[i] = (param != null ? new SqlParameterValue(param, paramValue) : SqlParameterSourceUtils.getTypedValue(paramSource, paramName)); }