配置数据库连接池   一般配置文件都写在哪里啊?  是写在服务器的配置文件里吗?  像tomcat?
配置连接池需要引用什么类包吗?   是像处理 文件上传 和 处理excel表格这些都有专门的类包使用吗?

解决方案 »

  1.   

    jdbc的jar包放到$CATALINA_HOME/common/lib:如果是sqlserver,
       包含3个jar包:msbase.jar,mssqlserver.jar,msutil.jar;
       如果是db2数据库:包含db2jcc.jar,db2jcc_license_cu.jar
    4: 在$CATALINA_HOME/conf/server.xml设置连接池:
       下面是配置的代码:必须放到<Host>和</Host>间:
              <!-- use jndi to conection  --> 
            <Context path="/tiles" docBase="/tiles_example" debug="0" reloadable="true" crossContext="true"> 
               <Resource name="jdbc/db2sql" auth="Container"   type="javax.sql.DataSource"/>
                <ResourceParams name="jdbc/db2sql">
                 <parameter>
                   <name>username</name>
                   <value>admin</value>
                 </parameter> 
                 <parameter> 
                   <name>password</name>
                   <value>lxc</value> 
                 </parameter>  
                 <parameter>   
                   <name>driverClassName</name>
                   <value>com.ibm.db2.jcc.DB2Driver</value> 
                 </parameter>    
                 <parameter>
                    <!-- name = driverName -->      
                   <name>url</name>
                   <value>jdbc:db2://localhost:50000/testDB</value>
                 </parameter>
                 <parameter> 
                  <name>maxActive</name>
                    <!-- Maximum number of DB connections in pool.Set to 0 for no limit. -->
         <value>100</value>
           </parameter>
           <parameter>
        <name>maxIdle</name>
        <!-- Maximum number of idle DB connections to retain in pool.Set to 0 for no limit. -->
        <value>30</value>
           </parameter>
           <parameter>
        <name>maxWait</name>
        <!-- Maximum time to wait for a DB connection to become available in ms.An exception is thrown if this timeout is exceeded.Set to -1 to wait indefinitely. -->
        <value>10000</value>
         </parameter>
         <parameter>
        <name>removeAbandoned</name>
        <!-- Abandoned DB connections are removed and recycled -->
        <value>true</value>
      </parameter>
      <parameter>
        <name>removeAbandonedTimeout</name>
        <!-- Use the removeAbandonedTimeout parameter to set the number of seconds a DB connection has been idle before it is considered abandoned.  -->
        <value>60</value>
         </parameter>
                      
                </ResourceParams>      
            </Context> 
    5: 在$CATALINA_HOME/webapps/quality/WEB-INF/web.xml里设置被引用的资源:
     下面是配置代码,必须放在<web-app>和</web-app>里。
     <!-- Database Config start -->
     <resource-ref>
      <description>connectDB test</description>
      <res-ref-name>jdbc/db2sql</res-ref-name>
      <res-type>javax.sql.DataSource</res-type>
      <res-auth>Container</res-auth>
     </resource-ref>
     <!-- Database Config end -->
    6: 在java文件中通过jndi name来连接数据库,简单写法如下:
       import javax.naming.Context;
       import javax.naming.InitialContext;
       import javax.sql.DataSource;
       ...............................
       private Connection conn = null;
       private Context   ctx = null;
      ......................................
       try {
           ctx =new InitialContext();
         if(ctx==null)
           throw new Exception("没有匹配的环境");
         DataSource ds=(DataSource)ctx.lookup("java:comp/env/jdbc/db2sql");
         if(ds==null)
          throw new Exception("没有匹配数据库");  
          this.conn = ds.getConnection();  //获得一个连接
        }
        catch (Exception e) {
          System.out.println("can 't link database ! " + e);
        }
      

  2.   

    如果用了SSH,则可以配置的地方有四个:hibernate.cfg.xml、applicationContext.xml、struts.xml、tomcat的server.xml中,如果没有用的话就配置在server.xml中或者是新建一个context.xml配置文件,如果是应用程序的话 你可以配置在一个自定义的属性文件里如:datasource.properties
      

  3.   

    jdbc的jar包放到$CATALINA_HOME/common/lib:如果是sqlserver, 
      包含3个jar包:msbase.jar,mssqlserver.jar,msutil.jar; 
      如果是db2数据库:包含db2jcc.jar,db2jcc_license_cu.jar 这些是jdbc连接数据库要用的包,那就是说要配置连接池的话就不用引入其他类包了被? 只用这些jdbc的
    驱动包就行了被?  还有tomcat 是写在 项目的 web.xml里 其他类型的服务器 比如weblogic  websphere那些也写在web.xml里吗?
      

  4.   

    Tomcat 缺省提供了一个连接池,但这个连接池要通过 JNDI 来获取。最好是使用连接池类库。例如 Apache DBCP、Proxool、c3p0 等都是很成熟的。