CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  Web 开发

请问有closeStmt()这个用法吗?

楼主zqgiftno1(X-FACTOR)2003-11-02 16:44:52 在 Java / Web 开发 提问

我的数据库连接文件是:mydb.java  
   
  package   mydb;  
  import   java.sql.*;  
  public   class   mydb{  
  String   sDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";  
  String   sConnStr="jdbc:odbc:user";  
  Connection   conn=null;  
  ResultSet   rs=null;  
  public   mydb(){  
  try{  
  Class.forName(sDBDriver);  
  }  
  catch(java.lang.ClassNotFoundException   e){  
  System.err.println("mydb():"+e.getMessage());  
  }  
  }  
  public   ResultSet   executeQuery(String   sql){  
  rs=null;  
  try{  
  conn=DriverManager.getConnection(sConnStr);  
  Statement   stmt=conn.createStatement();  
  rs=stmt.executeQuery(sql);  
  }  
  catch(SQLException   ex)  
  {System.err.println("aq.executeQuery:"+ex.getMessage());  
  }  
  return   rs;  
  }  
  }  
   
   
  请问:  
  <%@   page   language="java"   import="java.sql.*"%>  
  <jsp:useBean   id="RegisterBean"   scope="page"   class="mydb.mydb"/>  
  <%String   sql="select   *   from   user";  
      ResultSet   rs=RegisterBean.executeQuery(sql);  
      if(rs.next())  
        {rs.close();  
          RegisterBean.closeStmt();//?????????????数据库有此用法吗?  
          session.putValue("register_message","duplicate   name   found!");  
  }  
  %> 问题点数:80、回复次数:7Top

1 楼dext(德克斯特)回复于 2003-11-02 17:37:48 得分 10

stmt.close();Top

2 楼fowlerowen(利物浦天才)回复于 2003-11-02 17:54:31 得分 10

你的RegisterBean里面根本没有定义closeStmt();方法,又怎么能用RegisterBean.closeStmt()呢?  
   
  ResultSet有close()方法,Statement同样有该方法。Top

3 楼singnet(山居中人)回复于 2003-11-03 10:09:26 得分 20

在BEAN里加一个方法  
  public   void   closeStmt()  
  {  
  if(rs   !=   null)  
  rs.close();  
  if(conn   !=   null)  
  conn.close();  
  if(stmt   !=   null)  
  stmt.close();  
  }  
  然后再调用closeStmt()方法  
  Top

4 楼cxjd(dong)回复于 2003-11-03 10:22:37 得分 20

我是变了一个类专门用于关闭方法:  
  package   website;  
   
  import   java.sql.*;  
  /**  
    *   <p>Title:   </p>  
    *   <p>Description:   </p>  
    *   <p>Copyright:   Copyright   (c)   2003</p>  
    *   <p>Company:   </p>  
    *   @author   not   attributable  
    *   @version   1.0  
    */  
   
  public   class   DBClose   {  
      public   void   close(Connection   conn){  
          if(conn!=null)  
              try{  
                  conn.close();  
              }catch(Exception   e){  
              }  
      }  
      public   void   close(PreparedStatement   ps){  
          if(ps!=null)  
              try{  
                  ps.close();  
              }catch(Exception   e){  
              }  
      }  
      public   void   close(Statement   s){  
          if(s!=null)  
              try{  
                  s.close();  
              }catch(Exception   e){  
              }  
      }  
      public   void   close(ResultSet   rs){  
          if(rs!=null)  
              try{  
                  rs.close();  
              }catch(Exception   e){  
              }  
      }  
      public   void   close(ResultSet   rs,Connection   conn){  
          close(rs);  
          close(conn);  
      }  
      public   void   close(Connection   conn,ResultSet   rs){  
          close(rs);  
          close(conn);  
      }  
      public   void   close(PreparedStatement   ps,Connection   conn){  
          close(ps);  
          close(conn);  
      }  
      public   void   close(Connection   conn,PreparedStatement   ps){  
          close(ps);  
          close(conn);  
      }  
      public   void   close(Statement   s,Connection   conn){  
          close(s);  
          close(conn);  
      }  
      public   void   close(Connection   conn,Statement   s){  
          close(s);  
          close(conn);  
      }  
      public   void   close(ResultSet   rs,PreparedStatement   ps,Connection   conn){  
          close(rs);  
          close(ps);  
          close(conn);  
      }  
  }  
  Top

5 楼lynx1111(任我行:一个PLMM看着就兴奋的男人)回复于 2003-11-03 10:26:41 得分 20

你是不是看的这个:??  
  package   firm;  
  import   java.sql.*;  
   
  public   class   firm   {  
      String   sDBDriver   =   "sun.jdbc.odbc.JdbcOdbcDriver";  
      String   sConnStr   =   "jdbc:odbc:firm";  
      private   Connection   conn   =   null;  
      private   Statement   stmt   =   null;  
      ResultSet   rs   =   null;  
   
      public   firm()   {  
          try   {  
              Class.forName(sDBDriver);    
          }  
          catch(java.lang.ClassNotFoundException   e)   {  
              System.err.println("firm():   "   +   e.getMessage());  
          }  
      }  
       
      public   ResultSet   executeQuery(String   sql)   {  
          rs   =   null;  
          try   {  
          conn   =   DriverManager.getConnection(sConnStr);    
          stmt   =   conn.createStatement();  
          rs   =   stmt.executeQuery(sql);  
          }    
          catch(SQLException   ex)   {    
              System.err.println("aq.executeQuery:   "   +   ex.getMessage());  
          }  
          return   rs;  
      }  
       
      public   void   executeUpdate(String   sql)   {  
          stmt   =   null;  
          rs=null;  
          try   {  
          conn   =   DriverManager.getConnection(sConnStr);    
          stmt   =   conn.createStatement();  
          stmt.executeQuery(sql);  
          stmt.close();  
          conn.close();  
          }    
          catch(SQLException   ex)   {    
              System.err.println("aq.executeQuery:   "   +   ex.getMessage());  
          }  
      }  
   
      public   void   closeStmt(){  
          try{  
              stmt.close();  
            }  
          catch(SQLException   e){  
              e.printStackTrace();  
            }  
      }  
      public   void   closeConn(){  
          try{  
              conn.close();  
            }  
          catch(SQLException   e){  
              e.printStackTrace();  
            }  
      }  
  }  
  Top

6 楼zqgiftno1(X-FACTOR)回复于 2003-11-05 10:51:26 得分 0

简单点加上:  
  public   void   closeStmt(){  
  try{  
  stmt.close();  
  }  
  catch(SQLException   ek)  
  {System.err.println("stmt   error"+ek.getMessage());  
  }  
   
  }Top

7 楼zqgiftno1(X-FACTOR)回复于 2004-01-02 13:17:20 得分 0

package   mydb;  
  import   java.sql.*;  
  public   class   mydb{  
  String   sDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";  
  String   sConnStr="jdbc:odbc:user";  
  Connection   conn=null;  
  ResultSet   rs=null;  
  Statement   stmt;  
  public   mydb(){  
  try{  
  Class.forName(sDBDriver);  
  }  
  catch(java.lang.ClassNotFoundException   e){  
  System.err.println("mydb():"+e.getMessage());  
  }  
  }  
  public   ResultSet   executeQuery(String   sql){  
  rs=null;  
  try{  
  conn=DriverManager.getConnection(sConnStr);  
          stmt=conn.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);  
  rs=stmt.executeQuery(sql);  
  }  
  catch(SQLException   ex)  
  {System.err.println("aq.executeQuery:"+ex.getMessage());  
  }  
  return   rs;  
  }  
  public   void   executeUpdate(String   sql){  
  rs=null;  
  try{  
  conn=DriverManager.getConnection(sConnStr);  
          stmt=conn.createStatement();  
  stmt.executeUpdate(sql);  
  }  
  catch(SQLException   em)  
  {System.err.println("aq.executeQuery:"+em.getMessage());  
  }  
  }  
   
  public   void   closeStmt(){  
  try{  
  stmt.close();  
  }  
  catch(SQLException   ek)  
  {System.err.println("stmt   error"+ek.getMessage());  
  }  
   
  }  
  }Top

相关问题

  • “!“居然有这个用法!
  • java.lang.Character.Subset这个类的用法
  • 谁知道这个函数的用法?!
  • obj.captureEvents()说说这个用法吧!
  • 大家看看这个用法 p->next
  • 给讲下这个函数的用法
  • newid()这个函数的用法
  • 请问type()这个函数的用法
  • T* f()这个T的意思和用法
  • &*用法~~

关键词

  • ps
  • jdbc
  • closestmt
  • conn
  • stmt
  • sconnstr
  • sdbdriver
  • executequery
  • rs
  • close

得分解答快速导航

  • 帖主:zqgiftno1
  • dext
  • fowlerowen
  • singnet
  • cxjd
  • lynx1111

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo