JDBI supporta il binding dei tipi di enumerazione tramite annotazione?È possibile utilizzare @Bind con enumerazione e altri tipi arbitrari utilizzando JDBI?
Ad esempio, ipotizzando un DAO che ha incluso un metodo:
@SqlQuery("select count(*) from answer a where a.foo = :foo")
Long someSqlQuery(@Bind("foo") Foo foo);
E, foo
pari a Foo.BAR
, potrebbe mi aspetto una query:
select count(*) from answer a where a.foo = 'BAR'
Se è così, è toString()
utilizzata per determinare cosa è sostituito?
Inoltre, JDBI consente di utilizzare @Bind
con qualsiasi tipo che si estende Object
? E ancora, se è così, è toString()
usato?
Come commento successivo, la mia esperienza con 2.5.1 è che "Enum" si comporta nel modo in cui descrivo sopra. Detto questo, ho visto anche qualche strano comportamento, attorno a questo, probabilmente a causa di versioni JDBI in conflitto localmente. Speravo che qualcuno potesse indicarmi la documentazione relativa a questa funzione (vedo solo la documentazione che mostra 'Stringhe', tipi primitivi e 'Date') e un'indicazione di quale versione è consentita per usare' @ Bind' con 'enum'. – vpiTriumph