首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

大家帮忙看一下。小弟我这个连接池弄的对不对! 多谢

2012-04-23 
大家帮忙看一下。我这个连接池弄的对不对! 谢谢!请大家耐心的看一下谢谢了!自己找例子学了好些天了。但是不

大家帮忙看一下。我这个连接池弄的对不对! 谢谢!
请大家耐心的看一下     谢谢了!   自己找例子学了好些天了。但是不知道对不对!
谢谢

1:(测试文件在ROOT文件夹中)
D:\jakarta-tomcat-5.0.28\conf\server.xml
<host> </host> 之间:
                <Logger   className= "org.apache.catalina.logger.FileLogger "
                                  directory= "logs "     prefix= "localhost_log. "   suffix= ".txt "
                        timestamp= "true "/>

 
    <Context   path= " "   docBase= "ROOT "  
                debug= "5 "   reloadable= "true "   crossContext= "true ">  

                <Logger   className= "org.apache.catalina.logger.FileLogger "  
                                  directory= "logs "     prefix= "localhost_log. "   suffix= ".txt "  
                        timestamp= "true "/>  
                         
                <Resource   name= "jdbc/connectDB "  
                              auth= "Container "  
                              type= "javax.sql.DataSource "/>  
        <ResourceParams   name= "jdbc/connectDB ">  
            <parameter>  
                <name> factory </name>  
                <value> org.apache.commons.dbcp.BasicDataSourceFactory </value>  
            </parameter>  
     
        <parameter>  
            <name> removeAbandoned </name>  
            <value> true </value>  
          </parameter>  
          <parameter>  
            <name> removeAbandonedTimeout </name>  
            <value> 60 </value>  
          </parameter>  
          <parameter>  
            <name> logAbandoned </name>  
            <value> true </value>  
          </parameter>  
                 
            <parameter>  
                <name> maxActive </name>  


                <value> 1000 </value>  
            </parameter>  
            <parameter>  
                <name> maxIdle </name>  
                <value> 30 </value>  
            </parameter>  
            <parameter>  
                <name> maxWait </name>  
                <value> 1000 </value>  
            </parameter>  
            <parameter>  
              <name> username </name>  
              <value> sa </value>  
            </parameter>  
            <parameter>  
              <name> password </name>  
              <value> tytymnty110110 </value>  
            </parameter>  
            <parameter>  
                  <name> driverClassName </name>  
                  <value> net.sourceforge.jtds.jdbc.Driver </value>  
            </parameter>  
            <parameter>  
                <name> url </name>  
                <value> jdbc:jtds:sqlserver://127.0.0.1:1433/airin_b2b;charset=gb2312 </value>  
            </parameter>  
        </ResourceParams>  
    </Context>
===========================================================================
2:
D:\jakarta-tomcat-5.0.28\webapps\ROOT\WEB-INF\web.xml

<?xml   version= "1.0 "   encoding= "ISO-8859-1 "?>  
<web-app>  
    <display-name> tiannet   web </display-name>  
        <description> connectDB   test </description>  
        <resource-ref>  
            <description> DB   Connection </description>  
            <res-ref-name> jdbc/connectDB </res-ref-name>  
            <res-type> javax.sql.DataSource </res-type>  
            <res-auth> Container </res-auth>  
        </resource-ref>  
    <welcome-file-list>  
        <welcome-file> index.jsp </welcome-file>  
    </welcome-file-list>      


</web-app>  


===========================================================================

3:数据连接类

import   java.sql.*;
import   javax.sql.*;
import   java.io.*;
import   java.util.*;
import   javax.naming.*;
public   class   conn     //定义类名
{
    Connection   con=null;
    Statement     st   =null;
    ResultSet     rs=null;
    InitialContext   ctx;
    DataSource   ds   =   null;
    String   m_strDriver= "net.sourceforge.jtds.jdbc.Driver ";     //驱动字符串
    String   m_strConURL= "jdbc:jtds:sqlserver ";         //连接字符串
    public   conn()   throws   Exception
    {
        try{           //容错
try{
                ctx   =   new   InitialContext();
                ds   =   (DataSource)   ctx.lookup( "java:comp/env/jdbc/connectDB ");
                con   =   ds.getConnection();
                st   =   con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);

                if   (ctx   !=   null)   {     ctx.close();     }
        }catch(NamingException   e){     throw   e;       }
              }
              catch(Exception   e){   throw   e;}
    }


/**查询记录的方法*/


    public   ResultSet   Query(String   biao,String   table,String   tiaojian)
        {
        try{//必要的容错
                  String   select   =   "select   "+biao+ "   from     "+table+ "   where   1=1 "+tiaojian;
                  rs   =   st.executeQuery(select);//查询结果的显示
              }
              catch(Exception   ex)
                      {
                          System.out.print(ex.toString());//容错语句
                      }
                      return   rs;
    }
    public   int   count(String   table)
    {
      int   n=0;
      try{

                  String   select   =   "select   *   from     "+table;
                  rs   =   st.executeQuery(select);//查询结果的显示
                  while(rs.next()){   n   =   rs.getRow();}


              }
              catch(Exception   ex)
                      {
                          System.out.print(ex.toString());//容错语句
                      }
                      return   n;
    }

/**删除记录的方法*/

    public   void   del(String   table,String   tiaojian)//定义无返回类型的删除方法里面有两个变量
    {                                                                                 //因为删除操作只影响记录的条数
        try
        {
            //delete   from   table   where   conn;
            String   delete   =   "   delete   from   "+table+ "   where   "+tiaojian;
            //定义字符串变量,把不边的写到类里,便的用变量代替
            st.executeUpdate(delete);//执行删除
        }catch(Exception   ex){
        System.out.println(ex.getMessage());
        }
    }

/**添加记录的方法(可以随意的添加不需要条件)*/

    public   void   ins(String   table,String   zd,String   zhi)
    {
        try
        {
            String   insert   =   "   insert   into   "+table+ "   ( "+zd+ ")   values   ( "+zhi+ ") ";
            st.executeUpdate(insert);
        }

        catch(Exception   ex)
                {
                      System.out.print(ex.toString());
                }
    }

/**修改记录*/

    public   void   upd(String   table,String   zd,String   tiaojian)
    {
        try
        {
              String   update;//定义修改变量
              update   =   "   update   "+table+ "   set   "+zd+ "   where   1=1 "+tiaojian;
              st.executeUpdate(update);
              //执行修改变量语句
        }
        catch(Exception   ex){}
    }
    public   void   close(){
  try{
    if(rs   !=   null)
    {
          rs.close();
    }
    if(st   !=   null)
    {
          st.close();


    }

    if(con!=null){
    con.close();
    }

    }
    catch(SQLException   ex){}

}
}


==============================================================================

4:测试程序:

<%@   page   contentType= "text/html;   charset=gb2312 "   language= "java "   import= "java.sql.*,airinb2b.* "   errorPage= " "   %>
<html>
<head>
<title> Untitled   Document </title>
<meta   http-equiv= "Content-Type "   content= "text/html;   charset=gb2312 ">
</head>

<body>
<%
conn   db   =   new   conn();
int   i=0;
ResultSet   rs   =   db.Query( "* ", "用户表 ", " ");
while(rs.next()){
i++;
out.println(i);
}
%>
</body>
</html>


==========================================================================
5:成功打印出了结果   而且Tomcat中提示:
AbandonedObjectPool   is   used   (org.apache.commons.dbcp.AbandonedObjectPool@3468f4)
        LogAbandoned:   true
        RemoveAbandoned:   true
        RemoveAbandonedTimeout:   60


=====================================================================================

请问这算是应用成功了吗?

[解决办法]

[解决办法]
up
[解决办法]
...
[解决办法]
up
[解决办法]
成功了
[解决办法]
yes
[解决办法]
代码太多了,一般人很难有耐心看下去。
希望可以加一些注释。这也是一个良好的代码的风格。
[解决办法]
用admin控制台,界面设计,简单
[解决办法]
.............
[解决办法]
不错

热点排行
Bad Request.