当前位置:网站首页>在Map传值与对象传值中模糊查询
在Map传值与对象传值中模糊查询
2022-08-01 18:18:00 【酷小亚】
一、在Map传值中模糊查询
- 适用于字段或者参数过多,我们应当考虑使用Map!
- 在xml的sql语句当中,parametertaype的类型直接写map,不用写实体类的全类名了。
- #{} 括号内可以随意命名变量,不需要再与实体类的变量名一致。
- 在测试时,只需要 new 一个hashmap ,把括号内的变量当作key值,value为你要添加的值,然后put进map里就可以了。省去了建造多个构造器的步骤。
1、Mapper接口
List<Map> UserList(Map<String,Object> map);
2、XML
<select id="UserList" resultType="map">
select *
from mybatis01.user where name like #{value};
</select>
3、Test
@Test
public void getUserList() {
SqlSession sqlSession = MybatisUtil.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
HashMap<String, Object> map = new HashMap<>();
map.put("value", "%亚%");
List<Map> maps = mapper.UserList(map);
for (Map map1 : maps) {
System.out.println(map1);
}
//增删改中一定要提交事务! sqlSession.commit();
sqlSession.close();
}
二、在对象传值中模糊查询
- 在接口绑定的xml中,#{} 括号里面的变量,必须与实体类定义的变量名相对应。
- 在测试类当中,要new对象时,构造器的参数也必须与实体类创建的构造器一一对应。
1、实体类
package com.jin.pojo;
public class User {
private int id;
private String name;
private String pwd;
...
// (无参、有参、get和set、toString)
...
}
2、Mapper接口
List<User> UserList02(String name);
3、XML
<select id="UserList02" resultType="com.jin.pojo.User" parameterType="String">
select *
from mybatis01.user where name like #{name};
</select>
4、Test
@Test
public void UserList02(){
SqlSession sqlSession = MybatisUtil.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
List<User> userList = mapper.UserList02("%亚%");
for (User user : userList) {
System.out.println(user);
}
//增删改中一定要提交事务! sqlSession.commit();
sqlSession.close();
}
查询结果

边栏推荐
猜你喜欢
随机推荐
Leetcode72. 编辑距离
B005 - STC8 based single chip microcomputer intelligent street light control system
分布式消息队列平滑迁移技术实战
Leetcode74. 搜索二维矩阵
Go iota关键字与枚举类型实现原理是什么
SQL function TO_DATE (1)
B002 - Embedded Elderly Positioning Tracking Monitor
【报错】Uncaught (in promise) TypeError: Cannot read properties of undefined (reading ‘concat‘)
SQL function TO_DATE (2)
Leetcode73. Matrix Zeroing
以消费场景为驱动的CMDB要怎么建?
Topology零部件拆解3D可视化解决方案
Go GORM transaction instance analysis
SQL函数 TO_DATE(二)
SQL的substring_index()用法——MySQL字符串截取
暑假第二周总结博客
AntDB数据库亮相24届高速展,助力智慧高速创新应用
OpenCV安装、QT、VS配置项目设置
SQL的索引详细介绍
SQL的ROUND函数用法及其实例








