修改server.xml,在<GlobalNamingResources>里加入下面的代码:
<!--oracle--> <Resourcename="jdbc/oracle"auth="Container"type="javax.sql.DataSource"username="scott"password="tiger"driverClassName="oracle.jdbc.driver.OracleDriver"url="jdbc:oracle:thin:@localhost:1521:hqh"maxActive="8"maxIdle="4"/> <!--mssql--> <Resourcename="jdbc/mssql"auth="Container"type="javax.sql.DataSource"username="sa"password="sa"driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"url="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=OA"maxActive="8"maxIdle="4"/>
修改context.xml文件,修改后的代码:
<!--Thecontentsofthisfilewillbeloadedforeachwebapplication--> <Context> <!--Defaultsetofmonitoredresources--> <WatchedResource>WEB-INF/web.xml</WatchedResource> <!--UncommentthistodisablesessionpersistenceacrossTomcatrestarts--> <!-- <Managerpathname=""/> --> <!--UncommentthistoenableCometconnectiontacking(providesevents onsessionexpirationaswellaswebapplifecycle)--> <!-- <ValveclassName="org.apache.etConnectionManagerValve"/> --> <ResourceLink name="jdbc/oracle" type="javax.sql.DataSource" global="jdbc/oracle"/> <ResourceLink name="jdbc/mssql" type="javax.sql.DataSource" global="jdbc/mssql"/> </Context>
调用代码:
publicstaticConnectioncon=null; publicstaticConnectiongetConnection(){ //通过数据源 try{ Contextcontext=newInitialContext(); DataSourcedataSource=(DataSource)context.lookup("java:comp/env/jdbc/oracle"); con=dataSource.getConnection(); }catch(NamingExceptione){ e.printStackTrace(); }catch(SQLExceptione){ e.printStackTrace(); } returncon; }
别忘了把数据库驱动包放在D:\apache-tomcat-6.0.14\lib下哦!
还有一点值得注意的是,打开连接,不用的时候一定要close!否则可能下次要连接的时候出现“死了”的感觉!
官方网站的配置:/tomcat-6.0-doc/jndi-datasource-examples-howto.html#Database%20Connection%20Pool%20(DBCP)%20Configurations