mapper和dao的关系
时间: 2023-07-14 07:54:49 浏览: 173
mybatis.docx
Mapper和DAO都是数据访问层的组件,用于实现数据库操作。在Mybatis中,Mapper通常是指Mapper接口,而DAO通常是指DAO类。
Mapper接口是Mybatis中的一个重要概念,它定义了对数据的操作方法,其中每个方法都对应着一个SQL语句。Mapper接口中的方法可以通过Mybatis的动态代理机制实现,使得开发者可以直接调用Mapper接口中的方法来访问数据库,而无需编写复杂的SQL语句。
DAO类也是实现数据访问的一种方式,它通常是一个Java类,其中包含了访问数据库的方法。DAO类中的方法可以直接调用JDBC API或ORM框架来实现对数据库的操作。与Mapper接口不同的是,DAO类需要开发者手动编写SQL语句,而且需要进行参数绑定、结果集处理等操作。
因此,可以将Mapper接口看作是DAO的一种特殊形式,它通过动态代理机制自动实现了SQL语句的绑定和结果集的处理,从而简化了数据访问的操作。而对于一些特殊的需求,如动态SQL语句的拼接、复杂的查询操作,可能需要用到DAO类来实现。
阅读全文