У нас есть приложение Java J2EE, которое использовало отдельные вызовы веб-службы для каждой вставки / обновления строки базы данных. Это оказалось слишком медленно. Они привели меня, чтобы «быстро» это исправить. Я планирую преобразовать все вызовы веб-службы в простой JDBC. Для этого мне нужно получить соединение JDBC из пула, а затем использовать его несколькими различными способами. Мне нужно использовать одно и то же соединение JDBC в нескольких DAO, чтобы объединить все это в одну транзакцию базы данных. Я могу явно передать соединение JDBC каждому DAO, который в этом нуждается, но для этого потребуется изменить МНОГО сигнатур методов, а также МНОГО модульных тестов (что противоречит «быстрой» части).
Я пытаюсь найти хороший способ поместить соединение JDBC куда-нибудь, а затем просто взять его в нужных ему методах без необходимости явно передавать его повсюду. Мы не можем использовать Spring, JPA или Hibernate в этом проекте, потому что команда поддержки не будет поддерживать эти технологии. Я могу поместить соединение JDBC в EJB, но я не уверен, насколько надежным это будет. Я мог бы создать собственный Singleton для управления соединениями с базой данных для каждого пользователя (сеанс?), Но я должен был бы быть осторожным с безопасностью потоков. Если кто-то пытался сделать что-то подобное раньше, я был бы признателен за несколько советов.