import com.baomidou.mybatisplus.core.conditions.AbstractWrapper;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.stereotype.Component;
/**
* @className: MybatisSelectOneAspect
* @description: 预防 selectOne 响应多个报错
* @author: lbw
* @createTime: 2022-10-24 15:24
* @version: 1.0
*/
@Aspect
@Component
public class MybatisSelectOneAspect {
// 配置织入点
@Pointcut("execution(public * com.baomidou.mybatisplus.core.mapper.BaseMapper.selectOne(..))")
public void selectOneAspect() {
}
@Before("selectOneAspect()")
public void beforeSelect(JoinPoint point) {
Object arg = point.getArgs()[0];
if (arg instanceof AbstractWrapper) {
((AbstractWrapper<?, ?, ?>) arg).last(" limit 1 ");
}
}
}
Mybatis SelectOne返回多个结果
最新推荐文章于 2023-10-07 14:13:08 发布