mybatis进阶

Mybatis的各种查询功能

MyBatis的各种查询功能:
* 1、若查询出的数据只有一条
* a>可以通过实体类对象接收
* b>可以通过list集合接收
* c>可以通过map集合接收
* 结果:{password=123456, sex=男, id=3, age=23, [email protected], username=admin}
* 2、若查询出的数据有多条
* a>可以通过实体类类型的list集合接收
* b>可以通过map类型的list集合接收
* c>可以在mapper接口的方法上添加@MapKey注解,此时就可以将每条数据转换的map集合作为值,以某个字段的值作为键,放在同一个map集合中
* 注意:一定不能通过实体类对象接收,此时会抛异常TooManyResultsException
mybatis进阶_第1张图片
当查询的结果没有一个实体类可以对应的时候,可以用map封装

当返回值是多条数据时,可以用List<map>
mybatis进阶_第2张图片
当返回值是多条数据时,可以用@MapKey
mybatis进阶_第3张图片
@MapKey 的作用是唯一标识每一条记录
mybatis进阶_第4张图片

mybatis处理模糊查询

mybatis进阶_第5张图片

以下两种情况只能用${}

1、mybatis处理批量删除

mybatis进阶_第6张图片

因为sql语句是delete from t_user where id in (1,2,3),注意这里是不带引号的,而#{}的方式是带引号的,会报错,只能使用字符串拼接。

2、mybatis处理动态设置表名

mybatis进阶_第7张图片

mybatis获取添加功能自增的主键

mybatis进阶_第8张图片

mybatis进阶_第9张图片

你可能感兴趣的:(mybatis,mybatis,java,mysql)