怎么用工厂模式和DAO完成所有的对数据库的基本操作

08-03-25 MyEclipse2008
今天听高手说,用不着在每个dao里面写比如:getOrderById(id),insertOrder(order),delete()……这些最基本的方法,他说用工厂模式就可以实现为所有的dao只写一次诸如以上的方法,我特别疑惑,首先:到底怎么实现?其次:工厂模式和DAO到底是怎么结合起来的?

在我的理解,这个就是一般所说的做法



















public class HibernateDAOFactory extends DAOFactory {

    /* (non-Javadoc)
     * @see org.digitstore.dao.DAOFactorycreateAccountDAO()
     */
    public  UserinfoDao createAccountDAO() {
        // TODO Auto-generated method stub
        return new UserinfoDAOImpl();
    }

    /* (non-Javadoc)
     * @see org.digitstore.dao.DAOFactorycreateCategoryDAO()
     */
    public   CategoryDao createCategoryDAO() {
        // TODO Auto-generated method stub
        return new CategoryDAOImpl();
    }


}
<p class="indent">

是这样的吗?

[该贴被MyEclipse2008于2008-03-25 14:42修改过]

banq
2008-03-25 16:04
>工厂模式就可以实现为所有的dao只写一次诸如以上的方法
是的,现在如果使用Hibernate等持久框架,代码都基本无需写,工厂模式更无从谈起使用了。代码可见struts+jdon+hibernate的源码:

http://www.jdon.com/jdonframework/download.html

niweicumt
2008-10-29 11:49
我前一段时间看过,用的是泛型DAO,现在很多项目里面都这么用,不过我在项目中还没用过。