MyBatis Dao 开发:原始 Dao 和 Mapper 接口对比
Mybatis 开发 Dao 通常有两种方法,即原始 Dao 开发方法和 Mapper 接口开发方法。
-
原始 Dao 开发方法:
- 创建一个接口,例如 UserDao,定义各种数据库操作方法,例如 insertUser、updateUser、deleteUser、getUserById 等。
- 创建一个实现类 UserDaoImpl,实现 UserDao 接口,并使用 Mybatis 框架提供的 SqlSession 执行数据库操作。
- 在 UserDaoImpl 中,可以使用 SqlSession 的 selectOne、selectList、insert、update、delete 等方法执行对应的数据库操作。
-
Mapper 接口开发方法:
- 创建一个 Mapper 接口,例如 UserMapper,使用注解或 XML 文件定义各种数据库操作方法,例如 '@Select('SELECT * FROM user WHERE id = #{id}') User getUserById(int id)'。
- 在 Mybatis 的配置文件中,配置 Mapper 接口的扫描路径或引入 Mapper 接口的 XML 文件。
- 创建一个 Mapper 接口的代理对象,通过 SqlSession 的 getMapper 方法获取。
- 使用代理对象执行数据库操作方法,例如 UserMapper userMapper = sqlSession.getMapper(UserMapper.class); User user = userMapper.getUserById(1)。
无论是原始 Dao 开发方法还是 Mapper 接口开发方法,都需要配置 Mybatis 的配置文件,包括数据源配置、Mapper 接口扫描路径配置、SQL 语句映射配置等。同时,还需要在项目中引入 Mybatis 的依赖包,例如 mybatis、mybatis-spring 等。
总体来说,Mapper 接口开发方法更加简洁和灵活,推荐使用。它基于 Java 接口和注解的方式,可以更好地利用 IDE 的智能提示和编译时检查,提高代码的可维护性和可读性。而原始 Dao 开发方法相对繁琐,需要手动编写 SQL 语句,不如 Mapper 接口开发方法方便。
原文地址: https://www.cveoy.top/t/topic/qFAK 著作权归作者所有。请勿转载和采集!