MyBatis-Plus 的 getOne
方法用于从数据库中查询单条记录。它是在 BaseMapper
接口中定义的一个默认方法,因此你不需要手动实现它。你只需要在你的 Mapper 接口中继承 BaseMapper
,然后直接调用 getOne
方法即可。
以下是如何使用 getOne
方法的示例:
pom.xml
文件中添加以下依赖: <groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.x.x</version>
</dependency>
User
):public class User {
private Long id;
private String name;
private Integer age;
// 省略 getter 和 setter 方法
}
BaseMapper
的 Mapper 接口(例如 UserMapper
):import com.baomidou.mybatisplus.core.mapper.BaseMapper;
public interface UserMapper extends BaseMapper<User> {
}
UserMapper
并调用 getOne
方法:import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
public User getUserById(Long id) {
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("id", id);
return userMapper.getOne(queryWrapper);
}
}
在上面的示例中,我们使用 QueryWrapper
构建了一个查询条件,然后调用 userMapper.getOne(queryWrapper)
方法来查询指定 ID 的用户。getOne
方法会返回查询到的第一条记录,如果没有查询到记录,则返回 null
。
注意:getOne
方法在查询时会抛出异常,如果查询结果不唯一(即查询到多条记录)。为了避免这种情况,你应该确保查询条件能够唯一确定一条记录。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>