因为公司要用JNDI,要配置连接池,以前我也没用过连接池,好处我也不大清楚:),就是会用
都说连接池方便,在开发的时候,我是说如果是在eclipse等工具环境下的话,用那个玩意总是不大好吧?:(
其实在tomcat的文档里都有很详细的介绍,在这里估计也是把文档翻译一下而已了
办公室用的是5.0.3,公司用的web服务器是是4.1.18我用的版本是5.5
5.0.3和4.1.18配置有点不同,至于5.5我还没配置过,估计和5.0.3的版本差不多吧:(
闲话少说开始我们的翻译工作 ^_^:
不要告诉我,你的JDK还没装好哦
把需要的驱动都放到common的lib目录下面,mysql就是mysql的驱动拉,Oracle就是classes12拉,把他们
都放进去也没关系,没有驱动自己去下载:(
修改server.xml文件把
<Resource name="jdbc/mydb" auth="Container"type="java.sql.DataSource"/>
<ResourceParams name="jdbc/mydb">
<Parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</Parameter>
<Parameter>
<name>driverClassName</name>
<value>oracle.jdbc.driver.OracleDriver</value>
</Parameter>
<Parameter>
<name>url</name>
<value>jdbc:oracle:thin:myschema@127.0.0.1:1521:mysid</value>
</Parameter>
<Parameter>
<name>username</name>
<value>scott</value>
</Parameter>
<Parameter>
<name>username</name>
<value>scott</value>
</Parameter>
<Parameter>
<name>password</name>
<value>tiger</value>
</Parameter>
<Parameter>
<name>maxActive</name>
<value>20</value>
</Parameter>
<Parameter>
<name>maxIdle</name>
<value>10</value>
</Parameter>
<Parameter>
<name>maxwait</name>
<value>-1</value>
</Parameter>
</ResourceParams>
</Resource>
web.xml配置下例子请看:
<resource-ref>
<description>oracle database</description>
<res-ref-name>jdbc/mydb</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
里面有很多属性参数 我就不写出来了,可以参考UserDatabase的配置 在程序里是这样使用的:不要忘记import包了哦
// Obtain our environment naming context Context initCtx = new InitialContext(); Context envCtx = (Context) initCtx.lookup("java:comp/env"); // Look up our data source DataSource ds = (DataSource) envCtx.lookup("jdbc/mydb"); // Allocate and use a connection from the pool Connection conn = ds.getConnection(); ... use this connection to access the database ... conn.close();
目录的配置:
在conf的Catalina的localhost目录下 新建一个你的项目名称 as:ProjectA
在<Context docBase="ProjectA" path=""
privileged="true" antiResourceLocking="false" antiJARLocking="false">
</Context>
以上docBase是指你放web文件的地方