У меня есть простой сервлет, работающий в Tomcat. Поскольку сервлет подключается к базе данных, мне нужно использовать пул соединений. Однако все примеры в Интернете предполагают, что (разработчик) никогда не изменится, к какой базе данных подключается сервлет.
Например, вот пример файла context.xml.
<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true" path="/feeds">
<Resource name="jdbc/TestDB"
auth="Container"
type="javax.sql.DataSource"
factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
username="username"
password="password"
driverClassName="org.postgresql.Driver"
url="jdbc:postgresql://example.com:1234/myDB"
maxWait="1000"
removeAbandoned="true"
maxActive="30"
maxIdle="10"
removeAbandonedTimeout="60"
logAbandoned="true"/>
</Context>
В моем случае у меня есть тестовый сервер (postgresql) и рабочий сервер (ms sql), поэтому все учебные пособия, предполагающие, что я могу просто установить параметры жесткого кода в context.xml, не будут работать.
У меня есть 2 разных файла свойств для URL базы данных, аутентификации и т. Д., Которые я использую, один для тестового сервера, другой для рабочего сервера, и это прекрасно работает, но теперь, если я хочу использовать пул соединений, как мне интегрировать это в мой сервлет?
Я хочу иметь возможность нажать «build» в Netbeans 6.5, взять войну в каталоге dist и поместить ее в директорию приложения tomcat на любом сервере, без необходимости менять xml-файлы после новой войны был развернут. Сервлет знает, где взять файл свойств в каждой системе, поэтому, если я смогу интегрировать файл свойств со свойствами пула соединений, я бы все установил.
Есть идеи ...?