tomcat6配置DB连接池

1.更改Tomcat 6.0\conf下的context.xml文件

<?xml version='1.0' encoding='utf-8'?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<!-- The contents of this file will be loaded for each web application -->
<Context>

    <!-- Default set of monitored resources -->
    <WatchedResource>WEB-INF/web.xml</WatchedResource>
        
    <!-- Uncomment this to disable session persistence across Tomcat restarts -->
    <!--
    <Manager pathname="" />
    -->
<Resource
    name="jdbc/infogrid"
    type="javax.sql.DataSource"
    password="123"
    driverClassName="com.mysql.jdbc.Driver"
    maxIdle="2"
    maxWait="5000"
    username="root"
    url="jdbc:mysql://localhost:3306/ods_user"
    maxActive="4"/>

</Context>

name 为当前数据源JNDI的名字,可以随意设定;

auth 为验证方式;

type 资源类型;

driverClassName 为Oracle驱动引用;

maxActiv 为连接池最大激活的连接数,设为0表示无限制;

maxIdle 为连接池最大空闲的连接数,数据库连接的最大空闲时间。超过空闲时间,

            数据库连接将被标记为不可用,然后被释放。设为0表示无限制;

maxWait 为连接最大的等待时间,单位毫秒,如果超过此时间将接到异常。设为-1

              表示无限制。;

username 为oracle数据库的一个用户名;

password 为username的密码;

url 为连接oracle的连接地址;


2.程序中调用



         try{ 
                PreparedStatement ps=null;

		ResultSet rs=null;

		try{

		InitialContext ctx=new InitialContext();

		DataSource dataSource=(DataSource)ctx.lookup("java:comp/env/jdbc/infogrid");

		Connection connection=dataSource.getConnection();

		ps=connection.prepareStatement("select count(*) from tf_user");

		rs=ps.executeQuery();

		rs.next();

		System.out.println("表中行数为:"+rs.getInt(1));
	}
		
       catch(Exception e)
                {
			e.printStackTrace();
		}
		


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章