Search in sources :

Example 26 with User

use of com.maxqiu.demo.entity.User in project demo-SpringBoot by Max-Qiu.

the class TestLambdaQueryWrapper method testLambdaQueryChainWrapper.

/**
 * 链式写法,
 */
@Test
void testLambdaQueryChainWrapper() {
    // SELECT id,username,age,email FROM smp_user WHERE (age = ?)
    List<User> list = new LambdaQueryChainWrapper<>(userMapper).eq(User::getAge, 18).list();
    list.forEach(System.out::println);
    // SELECT COUNT(*) FROM smp_user WHERE (age = ?)
    // SELECT id,username,age,email,create_time FROM smp_user WHERE (age = ?) LIMIT ?
    Page<User> page = new LambdaQueryChainWrapper<>(userMapper).eq(User::getAge, 18).page(new Page<>(1, 10));
    System.out.println(page.getTotal());
    // SELECT COUNT( * ) FROM smp_user WHERE (age = ?)
    long count = new LambdaQueryChainWrapper<>(userMapper).eq(User::getAge, 18).count();
    System.out.println(count);
    // SELECT id,username,age,email,create_time FROM smp_user WHERE (age = ?)
    User one = new LambdaQueryChainWrapper<>(userMapper).eq(User::getAge, 18).one();
    System.out.println(one);
}
Also used : User(com.maxqiu.demo.entity.User) LambdaQueryChainWrapper(com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper) Test(org.junit.jupiter.api.Test) SpringBootTest(org.springframework.boot.test.context.SpringBootTest)

Example 27 with User

use of com.maxqiu.demo.entity.User in project demo-SpringBoot by Max-Qiu.

the class TestWrappers method queryWithEntity.

/**
 * 带参 传入实体 创建一个 LambdaQueryWrapper
 *
 * 此时 传入实体 作为查询条件
 */
@Test
void queryWithEntity() {
    // 相同字段的条件查询均会添加进SQL
    // 前一个username=?是实体生成的查询条件
    // 后一个username = ?是eq设置的查询条件
    // 实例传入Wrapper时,默认比较条件是相等,实体字段设置 condition = SqlCondition.xxx 可以进行修改
    // 比如:添加 condition = SqlCondition.LIKE 则查询时为 username LIKE CONCAT('%',?,'%')
    // SELECT id,username,age,email FROM smp_user WHERE username=? AND (username = ?)
    User user = new User();
    user.setUsername("max");
    LambdaQueryWrapper<User> lambdaQueryWrapper = Wrappers.lambdaQuery(user);
    lambdaQueryWrapper.eq(User::getUsername, "tom");
    List<User> list = userMapper.selectList(lambdaQueryWrapper);
    System.out.println(list);
}
Also used : User(com.maxqiu.demo.entity.User) Test(org.junit.jupiter.api.Test) SpringBootTest(org.springframework.boot.test.context.SpringBootTest)

Example 28 with User

use of com.maxqiu.demo.entity.User in project demo-SpringBoot by Max-Qiu.

the class TestWrappers method testWrapper.

@Test
void testWrapper() {
    // 创建一个空条件的查询构造器(其实用不到,条件为空的话可以直接传null,比如 userMapper.selectList(null))
    QueryWrapper<User> emptyWrapper = Wrappers.emptyWrapper();
    // 创建一个查询构造器(推荐用Lambda,毕竟queryWrapper.eq("username", "max")这种写String的方式看起来不咋地)
    QueryWrapper<User> queryWrapper1 = Wrappers.query();
    QueryWrapper<User> queryWrapper2 = Wrappers.query(new User());
    // 创建一个支持Lambda语法查询构造器(推荐,详细区别见下方代码)
    LambdaQueryWrapper<User> lambdaQueryWrapper1 = Wrappers.lambdaQuery();
    // 如果不使用对象接收直接链式...写法,可以使用下面这种写法设置泛型
    Wrappers.<User>lambdaQuery();
    LambdaQueryWrapper<User> lambdaQueryWrapper3 = Wrappers.lambdaQuery(User.class);
    LambdaQueryWrapper<User> lambdaQueryWrapper4 = Wrappers.lambdaQuery(new User());
    // 创建一个支持Lambda语法且支持链式写法的查询构造器
    LambdaQueryChainWrapper<User> lambdaQueryChainWrapper = new LambdaQueryChainWrapper<>(userMapper);
    UpdateWrapper<User> updateWrapper1 = Wrappers.update();
    UpdateWrapper<User> updateWrapper2 = Wrappers.update(new User());
    LambdaUpdateWrapper<User> lambdaUpdateWrapper1 = Wrappers.lambdaUpdate();
    LambdaUpdateWrapper<User> lambdaUpdateWrapper2 = Wrappers.lambdaUpdate(new User());
    LambdaUpdateWrapper<User> lambdaUpdateWrapper3 = Wrappers.lambdaUpdate(User.class);
    LambdaUpdateChainWrapper<User> lambdaUpdateChainWrapper = new LambdaUpdateChainWrapper<>(userMapper);
}
Also used : User(com.maxqiu.demo.entity.User) LambdaUpdateChainWrapper(com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper) LambdaQueryChainWrapper(com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper) Test(org.junit.jupiter.api.Test) SpringBootTest(org.springframework.boot.test.context.SpringBootTest)

Example 29 with User

use of com.maxqiu.demo.entity.User in project demo-SpringBoot by Max-Qiu.

the class TestWrappers method update.

/**
 * 无参 不指定泛型 创建一个 LambdaUpdateWrapper
 *
 * 此时需要手动指定泛型
 */
@Test
void update() {
    // UPDATE smp_user SET age=? WHERE (id = ?)
    User user = new User().setAge(18);
    LambdaUpdateWrapper<User> updateWrapper = Wrappers.lambdaUpdate();
    updateWrapper.eq(User::getId, 1);
    int update = userMapper.update(user, updateWrapper);
    System.out.println(update);
}
Also used : User(com.maxqiu.demo.entity.User) Test(org.junit.jupiter.api.Test) SpringBootTest(org.springframework.boot.test.context.SpringBootTest)

Example 30 with User

use of com.maxqiu.demo.entity.User in project demo-SpringBoot by Max-Qiu.

the class TestWrappers method updateWithClass.

/**
 * 带参 指定泛型 创建一个 LambdaQueryWrapper
 */
@Test
void updateWithClass() {
    // UPDATE smp_user SET age=? WHERE (id = ?)
    User user = new User().setAge(18);
    LambdaUpdateWrapper<User> updateWrapper = Wrappers.lambdaUpdate(User.class);
    updateWrapper.eq(User::getId, 1);
    int update = userMapper.update(user, updateWrapper);
    System.out.println(update);
}
Also used : User(com.maxqiu.demo.entity.User) Test(org.junit.jupiter.api.Test) SpringBootTest(org.springframework.boot.test.context.SpringBootTest)

Aggregations

User (com.maxqiu.demo.entity.User)61 Test (org.junit.jupiter.api.Test)55 SpringBootTest (org.springframework.boot.test.context.SpringBootTest)55 ArrayList (java.util.ArrayList)9 LambdaUpdateWrapper (com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper)5 BigDecimal (java.math.BigDecimal)3 Order (org.junit.jupiter.api.Order)3 QueryWrapper (com.baomidou.mybatisplus.core.conditions.query.QueryWrapper)2 LambdaQueryChainWrapper (com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper)2 SearchHit (org.springframework.data.elasticsearch.core.SearchHit)2 NativeSearchQuery (org.springframework.data.elasticsearch.core.query.NativeSearchQuery)2 NativeSearchQueryBuilder (org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder)2 LambdaQueryWrapper (com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper)1 IPage (com.baomidou.mybatisplus.core.metadata.IPage)1 LambdaUpdateChainWrapper (com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper)1 Page (com.baomidou.mybatisplus.extension.plugins.pagination.Page)1 MyPage (com.maxqiu.demo.model.MyPage)1 ParamSome (com.maxqiu.demo.model.ParamSome)1 List (java.util.List)1 RowBounds (org.apache.ibatis.session.RowBounds)1