对于我在生产环境中的服务,我总是在Tomcat的context.xml
中设置数据库连接池:
<Resource name="jdbc/MyDB" auth="Container" type="javax.sql.DataSource"
maxActive="256" maxIdle="5" maxWait="10000"
removeAbandoned="true" removeAbandonedTimeout="60" logAbandoned="true"
username="xxx" password="xxx" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://host:3306/dbname?autoReconnect=true"
validationQuery="SELECT 1"
/>
然后在我的服务中我使用:
InitialContext ctx = new InitialContext();
DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/MyDB");
Connection db = ds.getConnection();
对于开发我想独立运行Axis2 - 有没有办法在Axis中设置某个数据库连接池,所以我不需要像修改Tomcat一样修改服务代码和使用它?
答案 0 :(得分:0)
为什么不为不同的环境使用不同的context.xml文件。
e.g。
context_DEV.xml
context_UAT.xml
context_PROD.xml
然后使用符号链接指向正确的符号链接。
e.g。
context.xml -> context_DEV.xml
另外,请参阅this thread,建议使用servlet容器(例如Tomcat)而不是axis2独立服务器以确保稳定性。