QueryWrapper是干嘛的
时间: 2024-07-02 07:00:31 浏览: 90
QueryWrapper是MyBatis-Plus(MBP)中提供的一种高级SQL查询工具,它简化了动态SQL的编写,使得在编写复杂的查询条件时更加方便和灵活。QueryWrapper类似于JPA中的Criteria API,它提供了一种链式API的方式来构建SQL语句,无需手动拼接字符串,从而降低了SQL注入的风险,并提高了代码的可读性和维护性。
使用QueryWrapper,你可以像操作链一样设置查询条件、排序、分页等,例如:
```java
// 查询所有id为1的用户
List<User> users = UserMapper.selectQuery().eq("id", 1).list();
// 过滤并按年龄降序,分页查询第2页,每页10条数据
Page<User> page = UserMapper.selectQuery().eq("age", 20).desc("age").offset(10).limit(10).page(new Page<>(2, 10));
```
相关问题
querywrapper是干什么的
QueryWrapper是MyBatis-Plus框架中的一个查询条件构造器,用于构建SQL查询的条件。通过使用QueryWrapper,可以通过链式调用方法来设置查询条件,例如使用eq方法设置等于条件、ne方法设置不等于条件等。QueryWrapper还提供了许多其他的方法来支持各种不同的查询条件,如模糊查询、范围查询、排序等。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>
QueryWrapper queryWrapper = new QueryWrapper<Urolfuser2>() QueryWrapper<Urolfuser2> queryWrapper = new QueryWrapper<>()区别
QueryWrapper queryWrapper = new QueryWrapper<Urolfuser2>() 和 QueryWrapper<Urolfuser2> queryWrapper = new QueryWrapper<>() 的区别在于泛型的位置不同。
1. QueryWrapper queryWrapper = new QueryWrapper<Urolfuser2>():
这种写法将泛型 Urolfuser2 直接放在了 QueryWrapper 类的尖括号内,表示创建一个 QueryWrapper 对象,并指定其泛型类型为 Urolfuser2。这种写法在 Java 7 之前是必须的,因为 Java 7 之前的版本不支持类型推断。
2. QueryWrapper<Urolfuser2> queryWrapper = new QueryWrapper<>():
这种写法使用了类型推断,省略了泛型类型 Urolfuser2 的指定。编译器会根据变量的声明类型 QueryWrapper<Urolfuser2> 推断出泛型类型为 Urolfuser2。这种写法在 Java 7 及以后的版本中支持。
总结:
两种写法的功能是相同的,都是创建一个 QueryWrapper 对象,并指定其泛型类型为 Urolfuser2。只是第二种写法利用了类型推断,使代码更加简洁。
阅读全文