MyBatis使用Map与模糊查询的方法示例

网友投稿 544 2023-01-23

MyBatis使用Map与模糊查询的方法示例

MyBatis使用Map与模糊查询的方法示例

当我们的实体类、或者数据库里的表、字段或者参数很多,这个时候考虑使用map

一、使用map传参插入数据

1.编写Dao接口/Mapper层 使用Map做参数

//Dao接口/Mapper层 使用Map传参

int addUser2(Map map);

2.编写Mapper.xml中的sql语句

insert into firend_mq.users (id,username,password) value (#{userid},#{name},#{pwd})

3.编写测试类

//使用map传参添加插入

@Test

public void addUser2(){

SqlSession sqlSession = Mybatisutil.getSqlSession();

UserDao mapper = sqlSession.getMapper(UserDao.class);

Map map = new HashMap();

map.put("userid",4);

map.put("name","好人");

map.put("pwd",1111111);

mapper.addUser2(map);

sqlSession.commit();

sqlSession.close();

}

使用Map传参也可以批量插入数据

MyBatis 批量插入/修改/删除数据(mysql)

二、使用map修改数据

当我们的实体类、或者数据库里的表、字段或者参数很多的时候,使用一般的实体类传参,就需要将所有的字段全部写入,显然太过于繁琐,这时候使用map传入你需要更改的字段就行

代码大致相似就不放代码了。。。

三、模糊查询

1.方式一:java代码执行的时候,传递通配符% %

List likeliXaxnpeoynst = mapper.getUserlike("%毛%"Xaxnpeoyn);

2.方式二:在Mapper.xml中的sql拼接中使用通配符

select * from firend_mq.users where username like "%"#{value}"%"

实现结果:

总结:

Map传递参数,直接写sql语句中取出即可 {parameterType=“map”}

优点可以在取参数#{value}的时候可以DIY,直接使用自己传入的key值

对象传递参数,直接在sql中取对象的属性即可 {parameterType=“Object”}

但是必须和实体类名字一致

只有一个基本类型参数的情况下,可以直接在sql中取到

多个参数用Map,或者注解

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:MyBatis批量插入/修改/删除MySql数据
下一篇:通软应用安全桌面怎么下载(通软应用安全桌面打不开)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~