67,512
社区成员
发帖
与我相关
我的任务
分享
//业务工厂
public class BusinessFactory{
public static UserBO getUserBO(){
UserDAO userDAO = DAOFactory.getUserDAO();
return new UserBOImpl(userDAO);//每次都new一个新的BO对象
}
public static OtherBO getOtherBO(){
OtherDAO otherDAO = DAOFactory.getOtherDAO();
return new OtherBOImpl(otherDAO);
}
......
}
//DAO工厂
public class DAOFactory{
public static UserDAO getUserDAO(){
return new UserDAOImpl();//得到实际的UserDAOImpl
}
public static OtherDAO getOtherDAO(){
return new OtherDAOImpl();//得到实际的其他的OtherDAOImpl
}
}
//其中一个业务类
public class UserBOImpl implements UserBO{
private UserDAO userDAO;
public UserBOImpl(UserDAO userDAO){
this.userDAO = userDAO;
}
public void addUser(User user){
userDAO.addUser(user);
}
//其他业务方法
......
}
//其中一个DAO类
public class UserDAOImpl implements UserDAO{
public void addUser(User user){
//实际的数据库增加方法
}
//其他持久层方法
......
}
public class UserServiceTest {
private UserBO userBO;
......
public void testAddUser()
{
User user = new User();
user.set......
userBO = BusinessFactory.getUserBO();
userBO.addUser(user);
}
}