Mybatis框架

Posted L.lzl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mybatis框架相关的知识,希望对你有一定的参考价值。

MyBatis 是支持普通 SQL 查询存储过程高级映射的优秀==持久层框架==。MyBatis 消除了几乎所有的 JDBC 代码和参数的手工设置以及对结果集的检索封装。MyBatis 可以使用简单的 XML 或注解用于配置和原始映射,将接口和 Java 的 POJO(Plain Old Java Objects,普通的 Java 对象)映射成数据库中的记录. 半自动化框架。必须写sql语句。 ---->

1.1首先需要添加jar包

1.2 创建数据库库和表

1.3添加Mybatis的配置文件mybatis.xml

 1.4定义表所对应的实体类

1.5定义操作users表的sql映射文件userMapper.xml

1.6在 mybatis.xml文件中注册userMapper。xml文件

1.7编写测试代码:执行定义的select语句

2操作对user表的增删改查 

2.1,XML的实现

(1)定义sql映射xml文件

(2)在mybatis.xml中注册这个映射文件 

 

 (3)在dao接口调用

3.实际开发的模式

(1) 创建一个接口

(2)创建映射文件 

4几个可以优化的地方

4.1连接数据库的配置单独放在一个properties文件中

 

 4.2位实体类定义别名,简化sql映射xml文件中的引用

4.3可以在src下加入log4j的配置文件打印日志信息

5.解决字段名与实体类属性名不相同的冲突

5.1

准备表和数据

5.2定义实体类

5.3实现getOrderById(id)的查询

6.实现关联表查询

6.1一对多关联

(1)提出需求

根据班级id查询班级信息 

(2)创建表和数据

(3)定义实体类

(4) 定义sql映射文件classMapper.xml

(5)测试 

6.一对一关联

(1)提出需求

根据dept查询对于的部门信息,包括员工

(2)创建表和数据

emp表

dept表

(3)定义实体类

dept类

emp类

(4)定义sql映射文件

方式1: 嵌套结果: 使用嵌套结果映射来处理重复的联合结果的子集

 

方式2: 方式二:嵌套查询:通过执行另外一个 SQL 映射语句来返回预期的复杂类型

(5)测试

 7.动态SQL与模糊查询

7.1Mybatis动态sql语句使用方式和例子

建表如下

 (1)if元素

接口如下

映射文件

(2)choose

 (3).trim元素可以帮助我们去掉一下and,or等,prefix代表语句前缀,prefixOverides代表要去掉的字符串

(4) set元素,他可以在遇到逗号的时候,把对应的逗号去掉

(5) foreach元素,他是一个循环语句,作用时用来遍历集合,支持数组,List,Set接口集合

(6)测试

8.pagehelper分页插件

8.1使用 PageHelper 你只需要在 classpath 中包含 pagehelper-x.y.z.jarjsqlparser-x.y.z.jar

8.2 在 MyBatis 配置 xml 中配置拦截器插件

8.3 使用PageInfo的用法

以上是关于Mybatis框架的主要内容,如果未能解决你的问题,请参考以下文章

MYBATIS05_ifwherechoosewhentrimsetforEach标签sql片段

Mybatis框架第二篇

markdown [mybatis参考]关于mybatis #mybatis的一些片段

mybatis第二天

MyBatis动态SQL

mybatis学习(39):动态sql片段