技术开发 频道

关于代码重用的感悟

    以上这个工具类是用来做数据库操作的(要注意注释,注释也是做程序开发时很重要的部分),即使上面的说明注释已经解释过如何使用这个工具类,我还是要用一段代码来解释一下如何使用这个工具类。


    代码如下: 

//DBToolsX工具类的应用示范:
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import com.xuan.vo.UserInfo;

//以一个验证用户登录的实例解释DBToolsX工具类的使用
//这里就不给出UserInfo的JavaBean了
public class UserInfoDAO
...{
     //构造方法(这里的构造方法须传入一个Connection对象,
//而这个Connection对象可以在实例化UserInfoDAO时用
//DBToolsX.getConnection()来获取并传入:new UserInfoDAO(DBToolsX.getConnection())
 public UserInfoDAO(Connection conn)
 ...{
  this.conn=conn;
 }

 //判断用户登录条件方法
 public boolean checkUser(UserInfo user)
 ...{
  try
  ...{

   ps=conn.prepareStatement("SELECT userid FROM UserInfo WHERE userid=? AND passwordchar=?");
   ps.setString(1,user.getUserid());
   ps.setString(2,user.getPasswordchar());
   rs=ps.executeQuery();
   if(rs.next())
   ...{
    return true;
   }
   else
   ...{
    return false;
   }
  }
  catch (SQLException e)
  ...{
   e.printStackTrace();
  }
  finally
  ...{
// finally块十分重要,在连接被打开后必须在不用此连接时关闭连接以解省资源
   DBTools.closeResultSet(rs);     //关闭结果集rs
   DBTools.closeStatement(ps);    //关闭ps
   DBTools.closeConnection(conn); //关闭连接conn
  }
  return false;
 }

 private Connection conn=null;
 private ResultSet rs=null;
 private PreparedStatement ps=null;
}

 

    这样我们就做到了代码的重用(当然这个例子做得还可以更简便,不过在这里只为了讲述代码重用的意义,所以没再优化代码),我们不需要在每次对数据库进行操作时重新写DBToolsX.java中的代码了,不但节省了时间,提高了做程序的效率,而且程序不再臃肿,那些重复的代码也被“巧妙”的“隐藏”了,对修改和维护程序起到了作用,更好的是DBToolsX工具类在做其它程序时仅需稍加改动就可以发挥作用了!
    
    我们平时做程序时多注意代码重用性,对我们做程序是很有帮助的!

0
相关文章