Question

I've recently read in one tutorial that Spring closes connection after transaction commit.

Is that true? I can't find anything about it in the Spring reference documentation.

What's the rationale behind it? Since now, I thought that there is a one-to-many relation between connection and transactions.

Was it helpful?

Solution

Spring calls close() when the transaction finishes which could be from either a commit or rollback. Whether or not close() actually closes a real JDBC connection depends on the DataSource configuration. If it's a plain JDBC connection, then it will actually close. If it is a connection pool then it will probably just be returned to the pool on close.

OTHER TIPS

No, the connection is closed only when SessionFactory bean is destroyed.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top