mybatis generator使用 or查询.
时间: 2023-08-22 21:28:53 浏览: 152
MyBatis Generator生成的Example类默认使用AND连接查询条件,如果要使用OR连接查询条件,可以使用Example类提供的or()方法。具体步骤如下:
1. 生成Example类
首先使用MyBatis Generator生成Example类,例如:
```
<table tableName="user" domainObjectName="User" >
<generatedKey column="id" sqlStatement="MySql" identity="true" />
<property name="useActualColumnNames" value="true" />
</table>
```
生成的UserExample类中包含了一些基本的查询方法,如:
- andXxxEqualTo()
- andXxxNotEqualTo()
- andXxxGreaterThan()
- andXxxGreaterThanOrEqualTo()
- andXxxLessThan()
- andXxxLessThanOrEqualTo()
- andXxxLike()
- andXxxNotLike()
- andXxxIn()
- andXxxNotIn()
2. 使用or()方法连接OR查询条件
在Example类中,可以使用or()方法连接OR查询条件。例如:
```
UserExample example = new UserExample();
example.or().andUsernameEqualTo("user1").andAgeGreaterThan(20);
example.or().andUsernameEqualTo("user2").andAgeGreaterThan(30);
```
以上代码表示查询满足以下条件之一的用户:
- username等于"user1"且age大于20
- username等于"user2"且age大于30
其中,第一个or()方法连接的是第一个条件,第二个or()方法连接的是第二个条件。or()方法可以使用多次,每次连接一个条件。
3. 执行查询
最后,使用Mapper接口的selectByExample()方法执行查询:
```
List<User> userList = userMapper.selectByExample(example);
```
以上代码会返回符合查询条件的用户列表。
阅读全文