mybatis map 和 模糊查询拓展

tips: 当有一个基本数据类型时 ,可以不写

 

有很多基本类型在里面都默认定义了  所以map也不例外 这里直接用map  ,占位符的名字要对应 map的键即可:

 

下面示范 添加用户  和 删除用户 :

<?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

    <mapper namespace="com.bihu.Dao.UserMapper">
        <insert id="addUser" parameterType="map">
            insert into user values (#{id},#{name},#{pass},#{birthday})
        </insert>
    </mapper>
package com.bihu.Service;

import com.bihu.Dao.UserMapper;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import java.io.IOException;
import java.io.InputStream;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;

public class UserService {
    public static void main(String[] args) throws IOException {
        InputStream resourceAsStream = Resources.getResourceAsStream("SqlMapConfig.xml");
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(resourceAsStream);
        SqlSession sqlSession = sqlSessionFactory.openSession();
        UserMapper mapper = sqlSession.getMapper(UserMapper.class);
        //模拟数据
        Map<String,Object> map = new HashMap<>();
        map.put("id",99999);
        map.put("name","郭富城");
        map.put("pass","5555");
        map.put("birthday",new Date());

        mapper.addUser(map);
        sqlSession.commit();
        sqlSession.close();
    }
}
测试

可以看到#{xxx} 对应map的键即可

删除也一样 这里不做了吧...

 


 

 

关于模糊查询

 

 

我一般用第二种吧 ,单第一种比较安全。

 

posted @ 2021-09-02 15:36  咸瑜  阅读(44)  评论(0编辑  收藏  举报