соптимизированно, без гарантий, причём использование post в лямбде вряд-ли сильно повлияет.
В идеале - зайти в исходники JdbcTemplate#query и посмотреть что и как там происходит.
PreparedStatement-ы создаются на каждый connection заново. JdbcTemplate, если я правильно помню, connection у DataSource каждый раз заново просит, и значит надо заново делать Connection#prepareStatement. Другое дело, что некоторые умные пулы соединений (например как в ЖБоссе) умеют в рамках одного соединения кешировать preparedstatement-ы, и де-факто новый создан не будет. Но это может вызвать неприятные "утечки" памяти.
Да я не то чтобы волнуюсь, просто интересно, как это будет происходить. И возможна ли в принципе такая оптимизация
Обсуждают сегодня