MyBatisPlus_更新篇_入门试炼_03
生活随笔
收集整理的這篇文章主要介紹了
MyBatisPlus_更新篇_入门试炼_03
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
文章目錄
- 1. 實(shí)戰(zhàn)更新
1. 實(shí)戰(zhàn)更新
package com.gblfy.springboot.mybatisplus.mapper;import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper; import com.gblfy.springboot.mybatisplus.entity.User; import lombok.extern.slf4j.Slf4j; import org.junit.Assert; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map;@RunWith(SpringJUnit4ClassRunner.class) @SpringBootTest @Slf4j public class UserUpdateTest {@Autowiredprivate UserMapper userMapper;@Testpublic void updateById() {User user = new User();user.setId(1238735228017610754l);user.setEmail("gblfy@163.com");user.setAge(22);int rows = userMapper.updateById(user);System.out.println("影響記錄數(shù):" + rows);}//PDATE user SET age=?, email=? WHERE id=?/*** 根據(jù) whereEntity 條件,更新記錄** @param entity 實(shí)體對象 (set 條件值,可以為 null)* @param updateWrapper 實(shí)體對象封裝操作類(可以為 null,里面的 entity 用于生成 where 語句)*/@Testpublic void updateByWrapper() {UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();updateWrapper.eq("name", "Tom").eq("age", 28);User user = new User();user.setEmail("gblfy2@sino.com");user.setAge(22);int rows = userMapper.update(user, updateWrapper);System.out.println("影響記錄數(shù):" + rows);}//UPDATE user SET age=?, email=? WHERE name = ? AND age = ?/*** 更新方式1* 當(dāng)表中字段很多,只更新少量字段的值(建議使用)*/@Testpublic void updateByWrapper2() {UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();updateWrapper.eq("name", "Tom").eq("age", 28).set("age", 30);int rows = userMapper.update(null, updateWrapper);System.out.println("影響記錄數(shù):" + rows);//UPDATE user SET age=?, email=? WHERE name = ? AND age = ?}/*** WrapperLambda 更新方式2*/@Testpublic void updateByWrapperLambda() {LambdaUpdateWrapper<User> lambdaUpdateWrapper = Wrappers.<User>lambdaUpdate();lambdaUpdateWrapper.eq(User::getName, "Tom").eq(User::getAge, 28).set(User::getAge, 30);int rows = userMapper.update(null, lambdaUpdateWrapper);System.out.println("影響記錄數(shù):" + rows);}/*** WrapperLambdaChain 更新方式3*/@Testpublic void updateByWrapperLambdaChain() {boolean sign = new LambdaUpdateChainWrapper<User>(userMapper).eq(User::getName, "Tom").eq(User::getAge, 22).set(User::getAge, 30).update();System.out.println(sign);}//UPDATE user SET age=? WHERE name = ? AND age = ? }總結(jié)
以上是生活随笔為你收集整理的MyBatisPlus_更新篇_入门试炼_03的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 企业实战(Jenkins+GitLab+
- 下一篇: 软件设计师 - 函数依赖 和 范式