随笔 - 37,  文章 - 0,  评论 - 0,  阅读 - 15626
复制代码
package com.zhy.mybatisplus_project;

import com.zhy.mapper.UserMapper;
import com.zhy.pojo.User;


import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;


@SpringBootTest
public class MyBatisPlusTest {
    //这里爆红的原因是ioc容器中只能存在类所对应的bean,不能存在接口所对应的
    //bean,所以编译阶段会报错,运行阶段没有问题
    //可以选择加上required = false,或者在mapper层的接口加上@repository注解
    @Autowired(required = false)
    UserMapper userMapper;
    

    //插入,插入可以不指定id,默认采用雪花算法分配id
    @Test
    public void testInsert(){
        User user = new User();
        user.setName("张三");
        user.setAge(23);
        user.setEmail("Zhangsan@163.com");
        int result = userMapper.insert(user);
    }


    //通过id删除记录
    @Test
    public void testDelete(){
        int result = userMapper.deleteById(1528308944514154497L);
        System.out.println("result:"+result);
    }


    //通过map删除记录
    // 删除name为张三,age为23的记录
    @Test
    public void testDelete01(){
        Map<String,Object> map = new HashMap<>();
        map.put("name","张三");
        map.put("age",23);
        int result = userMapper.deleteByMap(map);
    }

    //通过多个id实现批量删除
    @Test
    public void testDelete02(){
        List<Long> list= Arrays.asList(1L, 2L, 3L);
        int result = userMapper.deleteBatchIds(list);
        System.out.println(result);
    }


    //更新用户信息,修改必须指定id
    @Test
    public void testUpdate(){
        User user = new User();
        user.setId(4L);
        user.setName("李四");
        user.setEmail("Lisi@163.com");
        int result = userMapper.updateById(user);
        System.out.println(result);
    }


    //通过id查询用户信息
    @Test
    public void testSelect(){
        User user = userMapper.selectById(1L);
        System.out.println(user);
    }

    //批量查询
    @Test
    public void testSelect1(){
        List<Long> list = Arrays.asList(1L, 2L, 3L);
        List<User> users = userMapper.selectBatchIds(list);
        System.out.println(users);
    }

    //通过map删除name为Jack,age为20的记录
  //
通过map封装查询条件
  //注意:map中的key对应数据库中的列名。如:数据库user_id,实体类是userId,这时mapkey需要填写user_id
    @Test
    public void testSelect2(){
        Map<String,Object> map = new HashMap<>();
        map.put("name","Jack");
        map.put("age",20);
        List<User> list = userMapper.selectByMap(map);
        list.forEach(System.out::println);
    }

    //查询所有用户
    @Test
    public void testSelectList(){
        //查询一个东西的时候如果没有条件直接写null
        List<User> list = userMapper.selectList(null);
        list.forEach(System.out::println);
    }
}
复制代码

 

posted on   西凉#  阅读(56)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Ollama——大语言模型本地部署的极速利器
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示