Risposta attuale
Questa domanda è diventata obsoleta con l'introduzione di CloseableDSLContext
, quando AutoCloseable la semantica è stata rimossa di nuovo dal più generico DSLContext . La modifica incompatibile è stata implementata in jOOQ 3.14, al fine di affrontare la confusione espressa in questa domanda e in poche altre, vedi:
https://github.com/jOOQ/jOOQ/issues/10512
Risposta storica
DSLContext è diventato AutoCloseable con le distribuzioni Java 8 di jOOQ 3.7. Il DSLContext.close()
il Javadoc del metodo spiega la semantica di questo close() chiama:
Solo le risorse allocate quando hai costruito il DSLContext sarà rilasciato. Non risorse che hai passato a DSLContext . Nel tuo caso, non stai allocando alcuna risorsa in questo try-with-resources dichiarazione, quindi non c'è nulla da rilasciare alla fine:
try (DSLContext context = DSL.using(configuration); ...) { ... }
Sarebbe diverso se assegnassi una nuova Connection proprio lì:
try (DSLContext context = DSL.using("jdbc:h2:~/test", "sa", ""); ...) { ... }
Riguardo alle tue domande:
Niente. Devi governarne tu stesso il ciclo di vita poiché jOOQ non sa nulla della tua strategia del ciclo di vita della connessione.
Sì.