简短回答:MyBatis 不算 Java DAO,但它通常用来实现 DAO 层。
更清楚地解释一下:
DAO(Data Access Object) 是一种设计模式/分层概念,用来把“业务逻辑”和“数据库访问”隔离开来。
在 Java 里,DAO 一般是:
UserDao)UserDaoImpl)例如:
public interface UserDao {
User selectById(Long id);
}
MyBatis 是一个 持久层框架(ORM 框架),用来简化 JDBC 操作。
它本身不是 DAO,也不是某种“层”,而是一个工具/框架。
MyBatis 常见用法:
@Mapper
public interface UserMapper {
User selectById(Long id);
}
可以这样理解:
DAO 层(概念)
└── 用 MyBatis 来实现(技术)
| 概念 | 类型 |
|---|---|
| DAO | 设计模式 / 分层 |
| MyBatis | 框架 |
| JPA / Hibernate | 框架 |
| UserDaoImpl | DAO 实现类 |
MyBatis 不是 Java DAO,而是常用于实现 DAO 层的持久层框架。
如果你愿意,我也可以画一张“Controller → Service → DAO → MyBatis”的层级图。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。