是否每个业务对象都对应一个DAO,然后在具体实现DAO描述的方法时(如update、insert等) 每当需要需要连接数据库时,在该方法中就要创建一个Connection。 为什么不一创建该DAO类的实例时在构造函数中就直接连接好数据库? 如 public class MysqlUserDao{ private static java.sql.Connection con=null public MysqlUserDao(){ //创建一个Mysq数据库的连接;} public insertUser(……){//直接用上面的连接;} …… } 这样写有什么坏处??
每个业务对象对应一个DAO接口,里面有查,删,增,改四个函数的描述 然后下面DAO接口的实现去写具体的方法 如: public interface UserDAO { public int insertUser(); public boolean deleteUser(); public User findUser(long id); public boolean updateUser(); public List selectUserVO(User userVO); } public class UserDAOImp1 implements UserDAO { //具体实现的代码 }
每当需要需要连接数据库时,在该方法中就要创建一个Connection。
为什么不一创建该DAO类的实例时在构造函数中就直接连接好数据库?
如 public class MysqlUserDao{
private static java.sql.Connection con=null
public MysqlUserDao(){ //创建一个Mysq数据库的连接;}
public insertUser(……){//直接用上面的连接;}
……
}
这样写有什么坏处??
顺便问楼主一个问题,你的DAO类是只有一个吗,有查,删,增,改四个函数,还是对每一个业务对象类都有这四个函数,还是作一个DAO类对数据库表进行封装,其他业务对象都有这个DAO类的实例?
然后下面DAO接口的实现去写具体的方法
如:
public interface UserDAO {
public int insertUser();
public boolean deleteUser();
public User findUser(long id);
public boolean updateUser();
public List selectUserVO(User userVO);
}
public class UserDAOImp1 implements UserDAO {
//具体实现的代码
}