В настоящее время я использую отдельный класс DBConnectionManager для обработки своего пула соединений, но я также понял, что это неправильный путь, поскольку сервлет не вызывал один и тот же пул каждый раз, когда выполняется doGet (). *
- Может кто-нибудь объяснить мне, почему происходит вышеизложенное?
- Является ли JNDI подходом для использования сервлетов Java с tomcat для правильного создания пула соединений?
У меня есть ссылки на 2 статьи, это правильный способ реализации пула соединений с сервлетами?
http://www.javaranch.com/journal/200601/JDBCConnectionPooling.html
http://onjava.com/onjava/2006/04/19/database-connection-pooling-with-tomcat.html
Можно ли сохранить объект db manager в контексте следующим образом:
mtdb = (MTDbManager) context.getAttribute("MTDBMANAGER");
if (mtdb == null) {
System.out
.println("MTDbManager is null, reinitialize MTDbManager");
initMTDB(config);
context.setAttribute("MTDBMANAGER", mtdb);
}
А затем я вызываю mtdb.getInstance (). GetConnection (), и он всегда будет ссылаться на этот объект.
Спасибо.