【Mybatis】无所不能的map

原创
小哥 3年前 (2022-11-07) 阅读数 83 #C#
文章标签 .net

【Mybatis】万能的map

1.营造环境

基础环境建设+pojo等等可以参考。 Mybatis项目实战 一篇文章,地址: https://blog.csdn.net/junR_980218/article/details/124145948 ,本文主要解释了Map的使用。

2.通用Map

1、dao向层添加接口

int  addUser(Map,map);

2、xml写入配置文件sql语句


    insert into mybatis.user(id,name,pwd)
    values(#{userId},#{userName},#{pwd});

这里有普通(非map形式)插入语句insert进行比较


    insert into mybatis.user(id,name,pwd)
    values(#{id},#{name},#{pwd});

注意:
从以上两个传入语句可以看出-mapinsert语句的形式,参数为User对象,因此values以下占位符必须与User对象中属性的字段是相同的,必须写入和使用对象所拥有的许多字段。map表单后面的insert语句,values以下占位符可以是任意的,只要它们符合数据库字段的规则,就不必保持一致,如果只插入了几个字段,则不能写出所有字段,只能写出需要插入的字段。

3、测试

@Test //插入学生信息
    public void addStudent1(){
        SqlSession sqlSession = MybatisUtils.getSqlSession();
        StudentMapper mapper = sqlSession.getMapper(StudentMapper.class);

        UserMapper mapper =sqlSession.getMapper(UserMapper.class);
        Map map=new HashMap();

        //在这里,只能插入某些字段的值,而不需要插入的字段可以直接写入。
        map.put("userId",5);
        map.put("userName","Hello");
        map.put("password","123456");
        mapper.addUser1(map);
        sqlSession.close();
    }

万能的map它在平时不是很有用,但在企业中使用得非常多。当对象的属性值很多时,直接插入或更新某些字段的值是非常方便的,而不是列出那么多的属性值。

版权声明

所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除

热门