下面是一些常見的JDBC Connection Pool
基本上都是Open Source,使用google找下载就可以了
Proxool
Jakarta Commons DBCP       (tomcat集成的)
XAPool
RP Database Connection Pool
JDBCPool (已久未更新)
Db Connection Broker
Poolman (已停止更新)
YAPoolman

解决方案 »

  1.   

    如何对用户名和密码加密??用post传递数值。  
    ---------------------------------------------------------------  
     
    package    Sales;  
    import  java.io.*;  
    import  java.lang.*;  
    import  java.util.*;  
     
    public  class  Secret  
    {  
               public  Secret()  
           {  
               }  
                 
               public  static  String  getdesecret(String  code)  
               {  
     
                                 String  value;  
                               //int[]  A1=new  int[40];  
                                 char[]  A1=new  char[40];  
                                 char[]  fname1=new  char[40];  
                                 char[]  A2=new  char[40];  
                                 //int  t1[]={6,12,5,9,10,0,13,8,15,3,14,4,2,11,1,7};  
                                 int  t2[]={5,14,12,9,11,2,0,15,7,3,4,13,1,6,10,8};  
                                 char  t3[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};  
     
                                 int  x,y,i=0,j=0,k,p,q;  
                                 int  key=32;  
                                   int  temp;  
                                 fname1=code.toCharArray();  
                                 k=code.length();  
                                   while((i<k)  &&  (fname1[i]  !=  '\0'))  
                                 {  
                                                   A1[j]=fname1[i];  
                                                   p=0;  
                                                   while((p<16)&&(A1[j]!=t3[p++]));  
                                                   A2[j]=fname1[i+1];  
                                                   q=0;  
                                                   while((q<16)&&(A2[j]!=t3[q++]));  
                                                   A1[j]=(char)(t2[p-1]*16+t2[q-1]);  
                                                   temp  =  (int)A1[j];  
                                                   temp  =  temp  ^  key;  
                                                   A1[j]=(char)temp;  
                                                   i=i+2;  
                                                   j++;  
                                   }  
                                   A1[j]=0;  
                                   value  =  String.valueOf(A1);  
                                   return(value);  
     
           }  
           public  static  String  getsecret(String  code)  
           {  
                       String  value;  
                   char[]  A1=new  char[40];  
                       char[]  A2=new  char[40];  
                   int  t1[]={6,12,5,9,10,0,13,8,15,3,14,4,2,11,1,7};  
    //                int  t2[]={5,14,12,9,11,2,0,15,7,3,4,13,1,6,10,8};  
                   char  t3[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};  
                   int  i=0,j=0,x,y,k;  
                   int  key=32;  
                   byte  temp;  
                   int  temp1;  
                   A1=code.toCharArray();  
                     k=code.length();  
                       while(j<k)  
                       {  
                           temp  =  (byte)A1[j];  
                           temp  =  (byte)(((int)temp)  ^  key);  
                           A1[j]=(char)temp;  
     
                       x=temp/16;  y=temp%16;  
                       A2[i++]=t3[t1[x]];  
                           temp1  =  i-1;  
                       A2[i++]=t3[t1[y]];  
                           temp1  =  i-1;  
                       j++;  
                       }  
                             A2[i]='\0';  
                           value  =  String.valueOf(A2);  
                             return(value);  
         }  
           
               public  static  void  main(String  args[])  
                   {  
                           
                         String  pws=Secret.getsecret("123456");  
                         System.out.println(pws);  
                         String  depws=Secret.getdesecret(pws);  
                         System.out.println(depws);  
                         System.exit(0);  
                   }  
                 
                 
               }
      

  2.   

    在一个页面中点击一个链接(一个jsp页),该页面还未编译完时(还未显示该页面)马上      
       
    点击另一个链接(也是一个jsp页),此时tomcat服务器的控制台上出现不断滚动的错误:      
       
    IllegalStateException    in.......    current    state=flushed    ,    new    state    =    coding      
       
    在页面中设了buffer="128kb"也没用,请高手指点,不胜感激!      
       
     
    ---------------------------------------------------------------  
     
    用一个javascript控制,用时间或次数都可以.  
     
    例子:  
    <script  language="JavaScript">  
    <!--  
    clckimgd  =  0;  
    function  clckimg()  {              
               clckimgd++;  
               if(clckimgd  >  1)    
               {  
                           alert('已经上传过一次图片......\n\n'  +  '请在下篇再上传......\n\n'  +  '不要重复按上传键,谢谢!');  
                           return  false;  
               }  
               window.open  ('smart/upimg.htm','上传图片',"width="  +370+  ",height="  +  200+  ",toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no");              
    }  
     
    -->  
    </script>  
     
     
     <input  name="Submit3"  type="button"  class="button1"  onClick="clckimg()"  value="上传图片">
      

  3.   

    http://dev.csdn.net/Develop/article/39/39778.shtm
    ^_^
      

  4.   

    转:
    1.Oracle与SQL Server在配置连接池时的区别:
    Tomcat配置文件中
    Oracle的配置方法
        <parameter>
          <name>url</name>
          <value>jdbc:oracle:thin:@172.28.122.49:1521:cpdb</value>   
        </parameter>    <parameter>
          <name>driverClassName</name>
          <value>oracle.jdbc.driver.OracleDriver</value>
        </parameter>SQL Server的配置方法
     <parameter>
      <name>url</name>
      <value>jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=pubs</value>
     </parameter>   <parameter>
      <name>driverClassName</name>
      <value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
     </parameter>
    注意:
    SQL Server包的取得方式
    从http://www.microsoft.com/downloads/details.aspx?FamilyID=4f8f2f01-1ed7-4c4d-8f7b-3d47969e66ae&DisplayLang=en#filelist下载"Microsoft SQL Server 2000 Driver for JDBC",并安装,得到msbase.jar,mssqlserver.jar和msutil.jar三个文件,将三个文件COPY到TOMCAT 4.1下common\lib文件夹中Oracle包的取得方式
    将\ORANT\jdbc\lib\classes12.jar COPY到TOMCAT 4.1下common\lib文件夹中2.Oracle与SQL Server在使用JDBC时的区别:
    Oracle
    String url_  = "172.28.122.49:1521:cpdb";
    String id_ = "cu01";
    String pass_ = "abc";
    Class.forName("oracle.jdbc.driver.OracleDriver");
       conn = DriverManager.getConnection("jdbc:oracle:thin:@" + url_, id_, pass_);SQL Server
    Class.forName("oracle.jdbc.driver.OracleDriver");
       conn = DriverManager.getConnection("jdbc:microsoft:sqlserver://BLUESKY:1433;User=sa;Password=sa;DatabaseName=sitedb);
    Class.forName(driverName);
    Connection conn = DriverManager.getConnection(connURL);3.例子说明
    例子中:tomcattry.xml是Tomcat的配置文件, sample是一个连接池servlet端代码(通过comming.html启动servlet)本例子环境
    OS: Windows2000
    JDK: 1.4.2_04
    IDE: Eclipse3.0
    Web Server: Tomcat4.1.27
    Database: Oracle9i数据库表结构
    表名:
    test
    结构:
    USERNAME                                  NOT NULL VARCHAR2(10)
    PASSWORD                                           VARCHAR2(10)
    建表语句:
    create table test(username varchar(10) primary key,password varchar(10));