Polishing.

Original pull request #1226
See #1212
This commit is contained in:
Jens Schauder
2022-05-17 14:20:13 +02:00
parent 4fb0ccf721
commit 93837a198f
3 changed files with 5 additions and 2 deletions

View File

@@ -165,7 +165,7 @@ public class StringBasedJdbcQuery extends AbstractJdbcQuery {
RelationalParameters.RelationalParameter parameter = queryMethod.getParameters().getParameter(p.getIndex());
ResolvableType resolvableType = parameter.getResolvableType();
Class<?> type = resolvableType.resolve();
Assert.notNull(type, "@Query parameter could not be resolved!");
Assert.notNull(type, "@Query parameter type could not be resolved!");
JdbcValue jdbcValue;
if (value instanceof Iterable) {
@@ -174,7 +174,9 @@ public class StringBasedJdbcQuery extends AbstractJdbcQuery {
SQLType jdbcType = null;
Class<?> elementType = resolvableType.getGeneric(0).resolve();
Assert.notNull(elementType, "@Query Iterable parameter generic type could not be resolved!");
for (Object o : (Iterable<?>) value) {
JdbcValue elementJdbcValue = converter.writeJdbcValue(o, elementType,
JdbcUtil.targetSqlTypeFor(JdbcColumnTypes.INSTANCE.resolvePrimitiveType(elementType)));

View File

@@ -179,6 +179,7 @@ public class JdbcRepositoryCustomConversionIntegrationTests {
}
interface EntityWithStringyBigDecimalRepository extends CrudRepository<EntityWithStringyBigDecimal, CustomId> {
@Query("SELECT * FROM ENTITY_WITH_STRINGY_BIG_DECIMAL WHERE DIRECTION IN (:types)")
List<EntityWithStringyBigDecimal> findByEnumTypeIn(List<Direction> types);

View File

@@ -4,7 +4,7 @@ DROP TABLE OTHER_ENTITY CASCADE CONSTRAINTS PURGE;
CREATE TABLE ENTITY_WITH_STRINGY_BIG_DECIMAL (
ID NUMBER GENERATED BY DEFAULT ON NULL AS IDENTITY PRIMARY KEY,
STRINGY_NUMBER DECIMAL(20,10),
DIRECTION INTEGER
DIRECTION NUMBER(1,0)
);
CREATE TABLE OTHER_ENTITY (