diff --git a/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/persistence/core/repository/AppInfoRepository.java b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/persistence/core/repository/AppInfoRepository.java index e9ce03de..f09ecba7 100644 --- a/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/persistence/core/repository/AppInfoRepository.java +++ b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/persistence/core/repository/AppInfoRepository.java @@ -1,6 +1,8 @@ package com.github.kfcfans.oms.server.persistence.core.repository; import com.github.kfcfans.oms.server.persistence.core.model.AppInfoDO; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; import org.springframework.data.jpa.repository.JpaRepository; import java.util.List; @@ -16,7 +18,7 @@ public interface AppInfoRepository extends JpaRepository { Optional findByAppName(String appName); - List findByAppNameLike(String condition); + Page findByAppNameLike(String condition, Pageable pageable); /** * 根据 currentServer 查询 appId diff --git a/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/web/WebLogAspect.java b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/web/WebLogAspect.java index 945344f1..05d5bf2f 100644 --- a/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/web/WebLogAspect.java +++ b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/web/WebLogAspect.java @@ -33,6 +33,14 @@ public class WebLogAspect { * 最后的两个点:所有类型的参数 */ @Pointcut("execution(public * com.github.kfcfans.oms.server.web.controller..*.*(..))") + public void include() { + } + + @Pointcut("execution(public * com.github.kfcfans.oms.server.web.controller.ServerController.*(..))") + public void exclude() { + } + + @Pointcut("include() && !exclude()") public void webLog() { } @@ -48,6 +56,9 @@ public class WebLogAspect { String[] classNameSplit = joinPoint.getSignature().getDeclaringTypeName().split("\\."); String classNameMini = classNameSplit[classNameSplit.length - 1]; String classMethod = classNameMini + "." + joinPoint.getSignature().getName(); + + // 排除特殊类 + // 192.168.1.1|POST|com.xxx.xxx.save|请求参数 log.info("{}|{}|{}|{}", request.getRemoteAddr(), request.getMethod(), classMethod, JSONObject.toJSONString(joinPoint.getArgs())); } diff --git a/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/web/controller/AppInfoController.java b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/web/controller/AppInfoController.java index 33998755..3a2d3b56 100644 --- a/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/web/controller/AppInfoController.java +++ b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/web/controller/AppInfoController.java @@ -1,13 +1,15 @@ package com.github.kfcfans.oms.server.web.controller; +import com.github.kfcfans.oms.common.response.ResultDTO; import com.github.kfcfans.oms.server.persistence.core.model.AppInfoDO; import com.github.kfcfans.oms.server.persistence.core.repository.AppInfoRepository; -import com.github.kfcfans.oms.common.response.ResultDTO; import com.github.kfcfans.oms.server.web.request.ModifyAppInfoRequest; import com.google.common.collect.Lists; import lombok.Data; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; +import org.springframework.data.domain.PageRequest; +import org.springframework.data.domain.Pageable; import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.*; @@ -30,6 +32,8 @@ public class AppInfoController { @Resource private AppInfoRepository appInfoRepository; + private static final int MAX_APP_NUM = 50; + @PostMapping("/save") public ResultDTO saveAppInfo(@RequestBody ModifyAppInfoRequest appInfoRequest) { @@ -53,10 +57,11 @@ public class AppInfoController { @GetMapping("/list") public ResultDTO> listAppInfo(@RequestParam(required = false) String condition) { List result; + Pageable limit = PageRequest.of(0, MAX_APP_NUM); if (StringUtils.isEmpty(condition)) { - result = appInfoRepository.findAll(); + result = appInfoRepository.findAll(limit).getContent(); }else { - result = appInfoRepository.findByAppNameLike("%" + condition + "%"); + result = appInfoRepository.findByAppNameLike("%" + condition + "%", limit).getContent(); } return ResultDTO.success(convert(result)); }