基于 maven 的 Mybatis入门使用
步骤
- 创建 MAVEN 工程
- 导入坐标
- 使用 maven 则可以在 pom.xml 导入相关的 依赖就可以了,参考官方文档: Mybaties入门
- 编写实体类 XXX
- 编写持久层接口 XXXDAO
- 编写 SqlMapConfig.xml 配置文件
- 编写持久层接口的映射文件 IUserDao.xml ( 使用 xml 配置需要)
- 编写测试类
为什么使用注解?
mybatis 通过 xml 或注解的方式将要执行的各种 statement 配置起来,并通过 java 对象和 statement 中 sql 的动态参数进行映射生成最终执行的 sql 语句,最后由 mybatis 框架执行 sql 并将结果映射为 java 对象并 返回。
采用 ORM 思想解决了实体和数据库映射的问题,对 jdbc 进行了封装,屏蔽了 jdbc api 底层访问细节,使我 们不用与 jdbc api 打交道,就可以完成对数据库的持久化操作。
在代码中,通过注解或者 XML 配置,我们可以不用写 dao 的实现类了(如果想写的话是可以的,这里不做讨论)
编写 XML配置文件
这个配置文件一般叫做SqlMapConfig.xml , 在 resource 目录下创建.
配置文件包含了对 MyBatis 系统的核心设置,一般有
- XML 头部的声明,它用来验证 XML 文档的正确性,
- environment 元素体中包含了事务管理和连接池的配置。
- mappers 元素则包含了一组映射器(mapper)
映射器(mapper) 中 关于 xml 配置 和 注解的区别
通过 xml 配置 ,需要在 resource 目录下额外创建 xml 中mapper 的资源文件,也就是一个基于 XML 映射文件.
resource 资源的路径名称是和你的 dao层的接口路径是一致的.
官方给出的基于 基于 XML 映射语句的参考写法:
通过 注解方法,就不需要再创建这么一个 基于 XML 映射文件了, 而是直接在 Dao 层的接口实现方法上写上select注解,在注解里写 相关语句就可以了.
然后在 SqlMapConfig.xml 里边, mapper 映射 要改成由 class属性指定被注解的 dao 全限定类名
例如:
修改前:
修改后
网友评论