我有一個數據源,在我的jetty.xml文件中設置看起來像這樣:多個servlet可以綁定到相同的數據源(JNDI)嗎?
<New id="MySQL_DS" class="org.eclipse.jetty.plus.jndi.Resource">
<Arg></Arg>
<Arg>jdbc/MySQL_DS</Arg>
<Arg>
<New class="com.mchange.v2.c3p0.ComboPooledDataSource">
<Set name="driverClass">com.mysql.jdbc.Driver</Set>
<Set name="jdbcUrl">jdbc:mysql:[IP]</Set>
<Set name="user">[USER]</Set>
<Set name="password">[PASSWORD]</Set>
<Set name="checkoutTimeout">5000</Set>
<Set name="initialPoolSize">3</Set>
<Set name="maxIdleTime">3600</Set>
<Set name="maxPoolSize">50</Set>
<Set name="minPoolSize">1</Set>
<Set name="maxStatements">200</Set>
<Set name="maxConnectionAge">0</Set>
<Set name="acquireIncrement">3</Set>
</New>
</Arg>
</New>
它在我的web.xml中定義的,像這樣:
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/MySQL_DS</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
我綁定到我的數據源像這在我的servlet代碼:
InitialContext ctx = new InitialContext();
_dataSource = (DataSource)ctx.lookup("java:comp/env/jdbc/MySQL_DS");
我的問題是:
我甲腎上腺素編輯有4個servlet使用這種上下文查找,在同一個數據源上。這樣的事情甚至可能嗎?
我的意思是,多個servlet可以綁定到同一個數據源,還是必須每個servlet都有自己的一個?
我這樣問,因爲我有一個正常工作的servlet,但另一個引發了一個javax.naming.NameNotFoundException(其餘名稱爲jdbc/MySQL_DS)。
謝謝!
好吧,似乎很相似,我在做什麼。謝謝! – Mathieu 2011-12-22 13:19:07