JDBI принимает параметры UUID?

При использовании привязки аргумента объекта SQL, делаетJDBI работать "из коробки" с параметрами UUID?

У меня есть такой метод:

@SqlQuery("EXECUTE [MyProcedure] :myField")
MyDto myMethod(@Bind("myField") UUID myField);

которая связана с хранимой процедурой SQL Server, которая получает такой параметр:

@myField uniqueidentifier

При выполнении это исключение выдается:

! com.microsoft.sqlserver.jdbc.SQLServerException: The conversion from UNKNOWN to UNKNOWN is unsupported.
! at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:190)
! at com.microsoft.sqlserver.jdbc.DataTypes.throwConversionError(DataTypes.java:1117)
! at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.setObject(SQLServerPreparedStatement.java:991)

Если я изменяю тип параметра в JDBI на String и вызываю его с помощью метода toString () из объекта UUID, он работает:

@SqlQuery("EXECUTE [MyProcedure] :myField")
MyDto trash(@Bind("myField") String myField);

Есть ли способ написать мои методы DAO, принимающие параметры UUID, и преобразовать их в строки перед привязкой?

Ответы на вопрос(1)

Ваш ответ на вопрос