DAO模式是什么?

解决方案 »

  1.   

     什么是DAO  DAO是Data Access Object数据访问接口,数据访问:故名思义就是与数据库打交道。夹在业务逻辑与数据库资源中间。  DAO的功能:  1. DAO用来封装Data Source的..就比如,Connection conn = DAOFacotry.createConnection()..
      就可以把Driver. URL. username, passpword这一些放在DAO中
      以后要更改数据库的类型.比如要把MSSQL换成Oracle的话..只需要更改DAOFacory里面的getConnection()里面的Driver.URL.之类的..
      2. DAO也是把对数据库的操作(比如最基本的CRUD操作)全部封装在里面..
      比如说你要你要插入一个新的用户..那么.在DAO中我们只需要提供一个insertUser(User user)这一个方法就可以了..具体的操作是在DAO中实现的...
      那么对于要调用DAO的时候.我们只要知道insertUser(User)是用来插入一个新的用户...而不需要知道是如何实现的。  一般 DAO是与Abstract Factory模式一起来用的...  Factory来建立数据库和定位具体的DAO(比如说是UserDao..CustomerDao..)..一般将getConnection设置为static..也可以把HibernateSessionFactory这一个公共类放在这一AbstractFactory类中去
      

  2.   

    做具体和数据库相关的操作的。
    StockBean .java       // 与数据表对应
    StockAction.java      //定义接口   public void SaveBean();
    StockActionDao.java   // 做具体的实现 ,创建数据库连接啊,取得bean里的数据拉,insert xx表拉.比如你创建了一个bean 对应一张表(如库存)。 
    web 页面对应一个表单。表单---保存提交到 actiondo.jsp
    ------actiondo.jsp----------
    StockBean sb = new StockBean();
    sb.setAmount(request.getParameter("amount"));
    ...............收集表单数据StockAction sa = new StockActionDao();
    sa.saveBean(sb);
    --------------------OK-----------------------
      

  3.   

    这个概念是很久之前的东西.7年前我看到的时候,有人说这个概念比较过时.因为太过简单,而且只对数据库进行描述,没有业务内涵.DAO当年出现的时候还有个兄弟叫做DTO.DAO是数据库访问对象,DTO是数据库传输对象.
    比如你有个用户名密码要存数据库里,封装的用户对象就是DTO,也就是要传输给数据库的数据.DAO是访问层,用来把DTO提交给数据库,并做操作.后来有了Hibernate,出来了持久层什么的,仅仅数据库的DAO和DTO消失了一段时间.不过Hibernate不是很争气,难以解决很多问题,所以DAO又复活了,并且一直活到现在.不过DTO很少有人在提了.
    个人赞同最开始的观点,DAO的表述比较无聊,有没有无所谓.围绕这个概念,和不围绕它做出来的东西,没有实质性差别.
      

  4.   

    DAO
    其实就是所谓的底层 和持久层
    主要是和数据库打交道的 从数据库获取数据
    然后在将数据传递给业务逻辑层
      

  5.   

     一般 DAO是与Abstract Factory模式一起来用的... 
      
      

  6.   

    持久化操作 与数据打交道  都写在DAO层
      

  7.   

    http://baike.baidu.com/view/160596.htm
      

  8.   

    自己下个这样的dao设置代码看看!!
     在自己写个
      

  9.   

    怀念DAO,
    可怜的Hibernate,
    可怜的EJB3.0