使用mybatisplus 自定义sql语句做一个查询实例
时间: 2024-05-03 21:20:16 浏览: 70
好的,您可以参考以下代码实现:
```
@Service
public class MyService {
@Autowired
private MyMapper myMapper;
// 自定义查询
public List<MyEntity> findMyEntities(String keyword) {
QueryWrapper<MyEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.select("id", "name", "age")
.lambda()
.like(MyEntity::getName, keyword)
.orderByDesc(MyEntity::getAge);
return myMapper.selectList(queryWrapper);
}
}
@Mapper
@Repository
public interface MyMapper extends BaseMapper<MyEntity> {
// 自定义 SQL 查询
@Select("select id, name, age from my_entity where age > #{age}")
List<MyEntity> selectMyEntitiesByAge(@Param("age") Integer age);
}
```
该示例使用了 MyBatis Plus 提供的 `QueryWrapper` 和 `BaseMapper` 工具类,借助 Lambda 表达式来构建 SQL 查询语句。同时,也给出了使用自定义 SQL 查询的例子,只需要在 `@Select` 注解中定义查询语句即可。
阅读全文