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

请各位帮忙解决:一个JSP页面多个查询的有关问题,细节怎么办更节省资源?

2012-01-06 
请各位帮忙解决:一个JSP页面多个查询的问题,细节怎么处理更节省资源?急啊急啊!!我的DBBEAN里面是这样连接

请各位帮忙解决:一个JSP页面多个查询的问题,细节怎么处理更节省资源?急啊急啊!!
我的DBBEAN里面是这样连接数据库的:
  public   static     Connection   getConnection()   throws   SQLException   {
            String   mySqlDriver   = "com.mysql.jdbc.Driver ";
            String   url   =   "jdbc:mysql://localhost/site ";//数据库连接          
            try   {
Class.forName(mySqlDriver);
        }  
catch   (ClassNotFoundException   e)     {
System.out.println(e.getMessage());
        }
                return   DriverManager.getConnection(url,   "site ",   "site123 ");
        }      
    //   perform   a   query   with   records   returned
    public   ResultSet   executeQuery(String   sql)     throws   SQLException
    {          
    try   {
                con   =   Dbbean.getConnection();
                Statement   statement   =   con.createStatement();
                rs   =   statement.executeQuery(sql);
        }
        catch(SQLException   ex)
        {
        }
        return   rs;
      }
           
当我在JSP页面里面执行查询的时候,     调用   executeQuery     的时候,是不是   每次都重新连接一次??
请问我上边的这个   dbbean   怎么改一下,让我在JSP页面里面连接一次,关闭一次就可以了。
连接-----查询,查询,查询,查询,查询------关闭;
因为我的不同的查询是在不同的区域里面; 

或者哪位好人,说说其他的解决办法?从其他的角度来想想办法,处理一下这个多次查询的问题。
我现在是  连接-查询-断开;连接-查询-断开;连接-查询-断开;
<TABLE   cellSpacing=0   cellPadding=0   height=60   width=500   border=0>
<TBODY>
<TR>
<TD>
      <%
String   ArriveB1   =   request.getParameter( "Arrive ");
String   sqlB1   =   "select   flightno,flightsort,starttime,arivetime,flightweek   from   t_flighttime   where   fcode   like   '%PEK% '   and   ecode   like   '%CGO% ' ";
ResultSet   rsB1   =   null;
rsB1   =   db.executeQuery(sqlB1);//类里面已经把连接数据库的连接写好,并且执行查询语句
//循环显示查询结果的记录
while   (rsB1.next())   {
%> <%=new   String(rsB1.getString(1).getBytes( "ISO-8859-1 "), "gbk ")%>
        详细信息: <%=new   String(rsB1.getString(2).getBytes( "ISO-8859-1 "), "gbk ")%>
    <%= " <br> "%>  
<%
}
rsB1.close();
db.freeRs(rsB1);
                                %>  
                                </FONT> </TD>


</TR>
</TBODY>
</table>
<TABLE   cellSpacing=0   cellPadding=0   height=60   width=500   border=0>
<TBODY>
<TR>
<TD>
    <%
String   ArriveB2   =   request.getParameter( "Arrive ");
//String   sql   =   "select   flightno,flightsort,starttime,arivetime,flightweek   from   t_flighttime   where   fcode   like   '%PEK% '   and   ecode   like   '%CGO% ' ";
String   sqlB2   =   "select   Content,address   from   t_cityinfo     where   flags= '2 '   and     scode   like   '% "
+   ArriveB2
+   "% ' "+ "   order   by   Sequence ";
ResultSet   rsB2   =   null;
rsB2   =   db.executeQuery(sqlB2);//类里面已经把连接数据库的连接写好,并且执行查询语句
//循环显示查询结果的记录
while   (rsB2.next())   {
%> <%=new   String(rsB2.getString(1).getBytes( "ISO-8859-1 "), "gbk ")%>
        详细信息: <%=new   String(rsB2.getString(2).getBytes( "ISO-8859-1 "), "gbk ")%>
    <%= " <br> "%>  
<%
}
rsB2.close();
db.freeRs(rsB2);
                                  %>  
                                </FONT> </TD>
</TR>
</TBODY>
</table>


小弟刚刚学习JSP ,请各位山岛洞主不惜金钱(时间就是金钱),手把手点拨一下呀?!
一定给各位大哥大姐们多加分。

[解决办法]
没有关闭连接,这样很耗费资源.赶快把你的程序改一下.你得多次查询,你把那个设置成page,如果可以的话,试试
[解决办法]
看看
[解决办法]
具体怎么做呢?我希望1楼的哥们给个例子,看看。或者简单把代码写一下,怎么处理?拷贝一下我上边写的那些,这样看的清除一些。
[解决办法]
你想jsp不动的话,就可以在java中不要每次executeQuery的时候都去getConnection。
是否可以做到一次getConnection,然后一直使用。
因为连接数据库比较慢。
思路是,连一次就不放,用完再放。
[解决办法]
基本是不能一次多个查询的,你可以考虑修改SQL,一条SQL直接查出所有需要的数据。

热点排行