当前位置:网站首页>Map by value
Map by value
2022-08-01 18:20:00 【Cool Xiaoya】
文章目录
一、Map的使用说明
假设,我们的实体类,或者数据库中的表,字段或者参数过多,我们应当考虑使用Map!
使用Map时,则Entity classes are not required了!(It is recommended to use when there are too many fields or parameters!)
二、Map 实例
Jump to previous article:
https://blog.csdn.net/weixin_45737330/article/details/126064436
Just modify the following code!
使用Map添加信息
1、Mapper接口
//使用mapto add user information
int getUserAdd02(Map<String,Object> map);
2、XML
<insert id="getUserAdd02" parameterType="map">
insert into mybatis01.user(id, name, pwd)
values (#{Ku_Id},#{Ku_Name},#{Ku_Pwd});
</insert>
3、Test
@Test
public void UserAdd(){
SqlSession sqlSession = MybatisUtil.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
//创建HashMap对象
HashMap<String, Object> map = new HashMap<>();
map.put("Ku_Id",6);
map.put("Ku_Name","酷");
map.put("Ku_Pwd","097");
mapper.getUserAdd02(map);
System.out.println(map);
//增删改一定要提交事务
sqlSession.commit();
sqlSession.close();
}
使用Map删除信息
1、Mapper接口
//使用map来删除用户信息
int getUserDel02(Map<String,Object> map);
2、XML
<delete id="getUserDel02" parameterType="map">
delete
from mybatis01.user
where id=#{Ku_Id};
</delete>
3、Test
@Test
public void UserDelete(){
SqlSession sqlSession = MybatisUtil.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
HashMap<String, Object> map = new HashMap<>();
map.put("Ku_Id",12);
int i = mapper.getUserDel02(map);
if(i>0){
System.out.println("删除成功!");
}else{
System.out.println("删除失败");
}
System.out.println(map);
//增删改一定要提交事务
sqlSession.commit();
sqlSession.close();
}
使用Map修改信息
1、Mapper接口
//使用map来修改用户信息
int getUserUpdate02(Map<String,Object> map);
2、XML
<update id="getUserUpdate02" parameterType="map">
update mybatis01.user
set id=#{Ku_Id},name=#{Ku_Name},pwd=#{Ku_Pwd}
where id=#{Ku_Id};
</update>
3、Test
@Test
public void UserUpd(){
SqlSession sqlSession = MybatisUtil.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
//创建HashMap对象
HashMap<String, Object> map = new HashMap<>();
map.put("Ku_Id",6);
map.put("Ku_Name","亚");
map.put("Ku_Pwd","3321");
mapper.getUserUpdate02(map);
System.out.println(map);
//增删改一定要提交事务
sqlSession.commit();
sqlSession.close();
}
使用Map查询信息
1、Mapper接口
//使用map来查询用户信息
List<Map> getUserSelect02(Map<String,Object> map);
2、XML
<select id="getUserSelect02" resultType="map">
select *
from mybatis01.user where id=#{kxy_Id};
</select>
3、Test
@Test
public void getUserSelect02(){
SqlSession sqlSession = MybatisUtil.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
//创建HashMap对象
HashMap<String, Object> map = new HashMap<>();
map.put("kxy_Id",6);
List<Map> mapList = mapper.getUserSelect02(map);
for (Map map1 : mapList) {
System.out.println(map1);
}
//增删改一定要提交事务 sqlSession.commit();
sqlSession.close();
}
总结
- Map传递参数,直接在sql中取出key即可!【parameterType=“map”】
- 对象传递参数,直接在sql中取对象的属性即可!【parameterType=“Object”】(int属性可省略不写!)
- 只有一个基本类型参数的情况下,可以直接在sql中取到! 多个参数用Map,或者注解!
边栏推荐
猜你喜欢

阿里云的域名和ip绑定

【Day_12 0507】二进制插入

计算IoU(D2L)

C#/VB.NET: extracted from the PDF document all form

C language theory--a solid foundation for the written test and interview

Leetcode72. 编辑距离

Summer vacation second week wrap-up blog

Topology Parts Disassembly 3D Visualization Solution

【Day_10 0428】井字棋
Detailed explanation of DBPack SQL Tracing function and data encryption function
随机推荐
Zabbix6.0钉钉机器人告警
SQL的索引详细介绍
OpenCV安装、QT、VS配置项目设置
2022年MySQL最新面试题
OnePlus 10RT appears on Geekbench, product launch also seems to be approaching
Review实战经典:2 种封装风格,你偏爱哪种?
How to build a CMDB driven by consumption scenarios?
【Day_08 0426】求最小公倍数
QT_QDialog dialog
opencv syntax Mat type summary
SQL函数 TO_DATE(一)
Golang协程调度器scheduler怎么使用
【报错】Uncaught (in promise) TypeError: Cannot read properties of undefined (reading ‘concat‘)
请你说说多线程
C#/VB.NET:从 PDF 文档中提取所有表格
WinRAR | Generate multiple installers into one installer
7月30号|来一场手把手助您打造智能视觉新爆款的技术动手实验
日志工厂(详细)
B002 - Embedded Elderly Positioning Tracking Monitor
想随时、随地、随心使用数据库的朋友们,全体注意!