mybatis查询条件有对象,int,string,三种条件怎么使用
时间: 2024-05-01 19:22:44 浏览: 8
使用 MyBatis 进行查询时,可以使用对象、int、string 等多种类型的参数作为查询条件。
1. 对象作为查询条件:
可以将 Java 对象作为查询条件,对象中的属性对应 SQL 语句中的查询条件。例如,定义一个 User 对象,其中包含查询条件 username 和 password:
```java
public class User {
private String username;
private String password;
// getter and setter
}
```
MyBatis 映射文件中的 SQL 语句可以这样写:
```xml
<select id="getUserByUsernameAndPassword" resultType="User">
SELECT * FROM user WHERE username = #{username} AND password = #{password}
</select>
```
在 Java 代码中,可以通过以下方式传入 User 对象作为查询条件:
```java
User user = new User();
user.setUsername("test");
user.setPassword("123456");
List<User> userList = sqlSession.selectList("getUserByUsernameAndPassword", user);
```
2. int 和 string 作为查询条件:
使用 int 和 string 作为查询条件时,直接在 SQL 语句中使用 #{参数名} 的方式引用即可。例如,定义一个查询条件为用户年龄和性别的方法:
```xml
<select id="getUserByAgeAndGender" resultType="User">
SELECT * FROM user WHERE age = #{age} AND gender = #{gender}
</select>
```
在 Java 代码中,可以通过以下方式传入 int 和 string 作为查询条件:
```java
List<User> userList = sqlSession.selectList("getUserByAgeAndGender", 18, "male");
```
以上就是使用 MyBatis 进行查询时,对象、int、string 等多种类型的参数作为查询条件的方法。