public class PageAspect { @Around("execution(* cn.hx.property.service.impl.*.queryAll(..))") public Object pageAOP(ProceedingJoinPoint joinPoint) throws Throwable { ServletRequestAttributes requestAttributes=(ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); HttpServletRequest request=requestAttributes.getRequest(); String page = request.getParameter("page"); String size = request.getParameter("size"); String orderBy = request.getParameter("orderBy"); //分页后缓存到redis的类型不能时 Page,必须是PageInfo,因为PageInfo 才能保留分页信息 if (StringUtils.hasText(page)&&StringUtils.hasText(size)){ Page<Object> objects = PageHelper.startPage(Integer.parseInt(page), Integer.parseInt(size), StringUtils.hasText(orderBy) ? orderBy : null); joinPoint.proceed();//调用目标方法 return new PageInfo<>(objects); } Object object = joinPoint.proceed();//调用目标方法 return object; }
aop中picut用法,分页处理
于 2023-04-19 20:35:04 首次发布