mrbird 6 лет назад
Родитель
Сommit
d80bcbcefd
43 измененных файлов с 207 добавлено и 94 удалено
  1. 1 1
      febs-auth/src/main/java/cc/mrbird/febs/auth/configure/FebsAuthorizationServerConfigurer.java
  2. 3 2
      febs-auth/src/main/java/cc/mrbird/febs/auth/configure/FebsResourceServerConfigurer.java
  3. 3 2
      febs-auth/src/main/java/cc/mrbird/febs/auth/configure/FebsSecurityConfigure.java
  4. 7 5
      febs-auth/src/main/java/cc/mrbird/febs/auth/filter/ValidateCodeFilter.java
  5. 4 0
      febs-auth/src/main/java/cc/mrbird/febs/auth/properties/FebsAuthProperties.java
  6. 2 2
      febs-auth/src/main/java/cc/mrbird/febs/auth/properties/FebsClientsProperties.java
  7. 2 1
      febs-auth/src/main/java/cc/mrbird/febs/auth/properties/FebsValidateCodeProperties.java
  8. 4 5
      febs-auth/src/main/java/cc/mrbird/febs/auth/runner/StartedUpRunner.java
  9. 4 3
      febs-auth/src/main/java/cc/mrbird/febs/auth/service/ValidateCodeService.java
  10. 1 0
      febs-auth/src/main/resources/febs-auth.properties
  11. 2 2
      febs-common/src/main/java/cc/mrbird/febs/common/configure/FebsOAuth2FeignConfigure.java
  12. 25 0
      febs-common/src/main/java/cc/mrbird/febs/common/entity/constant/EndpointConstant.java
  13. 16 10
      febs-common/src/main/java/cc/mrbird/febs/common/entity/constant/FebsConstant.java
  14. 1 2
      febs-common/src/main/java/cc/mrbird/febs/common/entity/constant/FebsServerConstant.java
  15. 30 0
      febs-common/src/main/java/cc/mrbird/febs/common/entity/constant/GrantTypeConstant.java
  16. 18 0
      febs-common/src/main/java/cc/mrbird/febs/common/entity/constant/ImageTypeConstant.java
  17. 23 0
      febs-common/src/main/java/cc/mrbird/febs/common/entity/constant/ParamsConstant.java
  18. 1 1
      febs-common/src/main/java/cc/mrbird/febs/common/interceptor/FebsServerProtectInterceptor.java
  19. 1 0
      febs-common/src/main/java/cc/mrbird/febs/common/selector/FebsCloudApplicationSelector.java
  20. 3 3
      febs-common/src/main/java/cc/mrbird/febs/common/utils/FileUtil.java
  21. 1 3
      febs-common/src/main/java/cc/mrbird/febs/common/utils/ServletRequestIPUtil.java
  22. 1 1
      febs-common/src/main/java/cc/mrbird/febs/common/utils/SortUtil.java
  23. 0 2
      febs-common/src/main/java/cc/mrbird/febs/common/utils/SpringContextUtil.java
  24. 2 1
      febs-gateway/src/main/java/cc/mrbird/febs/gateway/configure/FebsGateWayCorsConfigure.java
  25. 3 0
      febs-gateway/src/main/java/cc/mrbird/febs/gateway/configure/FebsGatewaySentinelConfigure.java
  26. 3 2
      febs-gateway/src/main/java/cc/mrbird/febs/gateway/filter/FebsGatewayRequestFilter.java
  27. 4 5
      febs-gateway/src/main/java/cc/mrbird/febs/gateway/runner/StartedUpRunner.java
  28. 3 4
      febs-monitor/febs-monitor-admin/src/main/java/cc/mrbird/febs/monitor/admin/runner/StartedUpRunner.java
  29. 3 2
      febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/configure/FebsServerSystemResourceServerConfigure.java
  30. 4 2
      febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/configure/FebsWebConfigure.java
  31. 5 4
      febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/helper/GeneratorHelper.java
  32. 6 9
      febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/runner/StartedUpRunner.java
  33. 1 1
      febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/ILogService.java
  34. 1 1
      febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/impl/DeptServiceImpl.java
  35. 1 1
      febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/impl/GeneratorServiceImpl.java
  36. 3 3
      febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/impl/LogServiceImpl.java
  37. 3 3
      febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/impl/LoginLogServiceImpl.java
  38. 1 1
      febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/impl/RoleServiceImpl.java
  39. 1 1
      febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/impl/UserServiceImpl.java
  40. 2 1
      febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/utils/AddressUtil.java
  41. 3 2
      febs-server/febs-server-test/src/main/java/cc/mrbird/febs/server/test/configure/FebsServerTestResourceServerConfigure.java
  42. 4 5
      febs-server/febs-server-test/src/main/java/cc/mrbird/febs/server/test/runner/StartedUpRunner.java
  43. 1 1
      febs-server/febs-server-test/src/main/java/cc/mrbird/febs/server/test/service/IUserService.java

+ 1 - 1
febs-auth/src/main/java/cc/mrbird/febs/auth/configure/FebsAuthorizationServerConfigurer.java

@@ -91,7 +91,7 @@ public class FebsAuthorizationServerConfigurer extends AuthorizationServerConfig
         DefaultUserAuthenticationConverter userAuthenticationConverter = new DefaultUserAuthenticationConverter();
         userAuthenticationConverter.setUserDetailsService(userDetailService);
         defaultAccessTokenConverter.setUserTokenConverter(userAuthenticationConverter);
-        accessTokenConverter.setSigningKey("febs");
+        accessTokenConverter.setSigningKey(properties.getJwtAccessKey());
         return accessTokenConverter;
     }
 

+ 3 - 2
febs-auth/src/main/java/cc/mrbird/febs/auth/configure/FebsResourceServerConfigurer.java

@@ -1,6 +1,7 @@
 package cc.mrbird.febs.auth.configure;
 
 import cc.mrbird.febs.auth.properties.FebsAuthProperties;
+import cc.mrbird.febs.common.entity.constant.EndpointConstant;
 import cc.mrbird.febs.common.handler.FebsAccessDeniedHandler;
 import cc.mrbird.febs.common.handler.FebsAuthExceptionEntryPoint;
 import org.apache.commons.lang3.StringUtils;
@@ -32,11 +33,11 @@ public class FebsResourceServerConfigurer extends ResourceServerConfigurerAdapte
         String[] anonUrls = StringUtils.splitByWholeSeparatorPreserveAllTokens(properties.getAnonUrl(), ",");
 
         http.csrf().disable()
-                .requestMatchers().antMatchers("/**")
+                .requestMatchers().antMatchers(EndpointConstant.ALL)
                 .and()
                 .authorizeRequests()
                 .antMatchers(anonUrls).permitAll()
-                .antMatchers("/**").authenticated()
+                .antMatchers(EndpointConstant.ALL).authenticated()
                 .and().httpBasic();
     }
 

+ 3 - 2
febs-auth/src/main/java/cc/mrbird/febs/auth/configure/FebsSecurityConfigure.java

@@ -2,6 +2,7 @@ package cc.mrbird.febs.auth.configure;
 
 import cc.mrbird.febs.auth.filter.ValidateCodeFilter;
 import cc.mrbird.febs.auth.service.FebsUserDetailService;
+import cc.mrbird.febs.common.entity.constant.EndpointConstant;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Bean;
 import org.springframework.core.annotation.Order;
@@ -38,10 +39,10 @@ public class FebsSecurityConfigure extends WebSecurityConfigurerAdapter {
     protected void configure(HttpSecurity http) throws Exception {
         http.addFilterBefore(validateCodeFilter, UsernamePasswordAuthenticationFilter.class)
                 .requestMatchers()
-                .antMatchers("/oauth/**")
+                .antMatchers(EndpointConstant.OAUTH_ALL)
                 .and()
                 .authorizeRequests()
-                .antMatchers("/oauth/**").authenticated()
+                .antMatchers(EndpointConstant.OAUTH_ALL).authenticated()
                 .and()
                 .csrf().disable();
     }

+ 7 - 5
febs-auth/src/main/java/cc/mrbird/febs/auth/filter/ValidateCodeFilter.java

@@ -2,6 +2,9 @@ package cc.mrbird.febs.auth.filter;
 
 import cc.mrbird.febs.auth.service.ValidateCodeService;
 import cc.mrbird.febs.common.entity.FebsResponse;
+import cc.mrbird.febs.common.entity.constant.EndpointConstant;
+import cc.mrbird.febs.common.entity.constant.GrantTypeConstant;
+import cc.mrbird.febs.common.entity.constant.ParamsConstant;
 import cc.mrbird.febs.common.exception.ValidateCodeException;
 import cc.mrbird.febs.common.utils.FebsUtil;
 import lombok.extern.slf4j.Slf4j;
@@ -41,9 +44,9 @@ public class ValidateCodeFilter extends OncePerRequestFilter {
         String header = httpServletRequest.getHeader(HttpHeaders.AUTHORIZATION);
         String clientId = getClientId(header, httpServletRequest);
 
-        RequestMatcher matcher = new AntPathRequestMatcher("/oauth/token", HttpMethod.POST.toString());
+        RequestMatcher matcher = new AntPathRequestMatcher(EndpointConstant.OAUTH_TOKEN, HttpMethod.POST.toString());
         if (matcher.matches(httpServletRequest)
-                && StringUtils.equalsIgnoreCase(httpServletRequest.getParameter("grant_type"), "password")
+                && StringUtils.equalsIgnoreCase(httpServletRequest.getParameter(ParamsConstant.GRANT_TYPE), GrantTypeConstant.PASSWORD)
                 && !StringUtils.equalsAnyIgnoreCase(clientId, "swagger")) {
             try {
                 validateCode(httpServletRequest);
@@ -60,8 +63,8 @@ public class ValidateCodeFilter extends OncePerRequestFilter {
     }
 
     private void validateCode(HttpServletRequest httpServletRequest) throws ValidateCodeException {
-        String code = httpServletRequest.getParameter("code");
-        String key = httpServletRequest.getParameter("key");
+        String code = httpServletRequest.getParameter(ParamsConstant.VALIDATE_CODE_CODE);
+        String key = httpServletRequest.getParameter(ParamsConstant.VALIDATE_CODE_KEY);
         validateCodeService.check(key, code);
     }
 
@@ -71,7 +74,6 @@ public class ValidateCodeFilter extends OncePerRequestFilter {
             byte[] base64Token = header.substring(6).getBytes(StandardCharsets.UTF_8);
             byte[] decoded;
             decoded = Base64.getDecoder().decode(base64Token);
-
             String token = new String(decoded, StandardCharsets.UTF_8);
             int delim = token.indexOf(":");
             if (delim != -1) {

+ 4 - 0
febs-auth/src/main/java/cc/mrbird/febs/auth/properties/FebsAuthProperties.java

@@ -26,4 +26,8 @@ public class FebsAuthProperties {
      * 验证码配置
      */
     private FebsValidateCodeProperties code = new FebsValidateCodeProperties();
+    /**
+     * JWT加密密钥
+     */
+    private String jwtAccessKey;
 }

+ 2 - 2
febs-auth/src/main/java/cc/mrbird/febs/auth/properties/FebsClientsProperties.java

@@ -18,11 +18,11 @@ public class FebsClientsProperties {
     /**
      * 认证类型
      */
-    private String grantType = "password,authorization_code,refresh_token";
+    private String grantType;
     /**
      * 范围
      */
-    private String scope = "all";
+    private String scope;
     /**
      * 访问令牌有效时间,单位秒
      */

+ 2 - 1
febs-auth/src/main/java/cc/mrbird/febs/auth/properties/FebsValidateCodeProperties.java

@@ -1,5 +1,6 @@
 package cc.mrbird.febs.auth.properties;
 
+import cc.mrbird.febs.common.entity.constant.ImageTypeConstant;
 import lombok.Data;
 
 /**
@@ -15,7 +16,7 @@ public class FebsValidateCodeProperties {
     /**
      * 验证码类型,可选值 png和 gif
      */
-    private String type = "png";
+    private String type = ImageTypeConstant.PNG;
     /**
      * 图片宽度,px
      */

+ 4 - 5
febs-auth/src/main/java/cc/mrbird/febs/auth/runner/StartedUpRunner.java

@@ -1,6 +1,6 @@
 package cc.mrbird.febs.auth.runner;
 
-import cc.mrbird.febs.common.entity.FebsServerConstant;
+import cc.mrbird.febs.common.entity.constant.FebsServerConstant;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
@@ -24,10 +24,9 @@ public class StartedUpRunner implements ApplicationRunner {
     @Override
     public void run(ApplicationArguments args) {
         if (context.isActive()) {
-            log.info(" __    ___   _      ___   _     ____ _____  ____ ");
-            log.info("/ /`  / / \\ | |\\/| | |_) | |   | |_   | |  | |_  ");
-            log.info("\\_\\_, \\_\\_/ |_|  | |_|   |_|__ |_|__  |_|  |_|__ ");
-            log.info("                                                      ");
+            log.info(" +-+-+-+-+-+-+-+-+");
+            log.info(" |c|o|m|p|l|e|t|e|");
+            log.info(" +-+-+-+-+-+-+-+-+");
             log.info("{} 启动完毕,时间:{}", applicationName, LocalDateTime.now());
         }
     }

+ 4 - 3
febs-auth/src/main/java/cc/mrbird/febs/auth/service/ValidateCodeService.java

@@ -2,7 +2,8 @@ package cc.mrbird.febs.auth.service;
 
 import cc.mrbird.febs.auth.properties.FebsAuthProperties;
 import cc.mrbird.febs.auth.properties.FebsValidateCodeProperties;
-import cc.mrbird.febs.common.entity.FebsConstant;
+import cc.mrbird.febs.common.entity.constant.FebsConstant;
+import cc.mrbird.febs.common.entity.constant.ImageTypeConstant;
 import cc.mrbird.febs.common.exception.ValidateCodeException;
 import cc.mrbird.febs.common.service.RedisService;
 import com.wf.captcha.GifCaptcha;
@@ -71,7 +72,7 @@ public class ValidateCodeService {
 
     private Captcha createCaptcha(FebsValidateCodeProperties code) {
         Captcha captcha = null;
-        if (StringUtils.equalsIgnoreCase(code.getType(), FebsConstant.GIF)) {
+        if (StringUtils.equalsIgnoreCase(code.getType(), ImageTypeConstant.GIF)) {
             captcha = new GifCaptcha(code.getWidth(), code.getHeight(), code.getLength());
         } else {
             captcha = new SpecCaptcha(code.getWidth(), code.getHeight(), code.getLength());
@@ -81,7 +82,7 @@ public class ValidateCodeService {
     }
 
     private void setHeader(HttpServletResponse response, String type) {
-        if (StringUtils.equalsIgnoreCase(type, FebsConstant.GIF)) {
+        if (StringUtils.equalsIgnoreCase(type, ImageTypeConstant.GIF)) {
             response.setContentType(MediaType.IMAGE_GIF_VALUE);
         } else {
             response.setContentType(MediaType.IMAGE_PNG_VALUE);

+ 1 - 0
febs-auth/src/main/resources/febs-auth.properties

@@ -12,6 +12,7 @@ febs.auth.clients[1].scope=test
 febs.auth.clients[1].accessTokenValiditySeconds=3600
 
 febs.auth.anonUrl=/actuator/**,/captcha
+febs.auth.jwtAccessKey=febs
 
 febs.auth.code.time=120
 febs.auth.code.type=png

+ 2 - 2
febs-common/src/main/java/cc/mrbird/febs/common/configure/FebsOAuth2FeignConfigure.java

@@ -1,6 +1,6 @@
 package cc.mrbird.febs.common.configure;
 
-import cc.mrbird.febs.common.entity.FebsConstant;
+import cc.mrbird.febs.common.entity.constant.FebsConstant;
 import com.google.common.net.HttpHeaders;
 import feign.RequestInterceptor;
 import org.springframework.context.annotation.Bean;
@@ -25,7 +25,7 @@ public class FebsOAuth2FeignConfigure {
             Object details = SecurityContextHolder.getContext().getAuthentication().getDetails();
             if (details instanceof OAuth2AuthenticationDetails) {
                 String authorizationToken = ((OAuth2AuthenticationDetails) details).getTokenValue();
-                requestTemplate.header(HttpHeaders.AUTHORIZATION, "bearer " + authorizationToken);
+                requestTemplate.header(HttpHeaders.AUTHORIZATION, FebsConstant.OAUTH2_TOKEN_TYPE + authorizationToken);
             }
         };
     }

+ 25 - 0
febs-common/src/main/java/cc/mrbird/febs/common/entity/constant/EndpointConstant.java

@@ -0,0 +1,25 @@
+package cc.mrbird.febs.common.entity.constant;
+
+/**
+ * 端点常量
+ *
+ * @author MrBird
+ */
+public class EndpointConstant {
+
+    public static final String ALL = "/**";
+
+    public static final String OAUTH_ALL = "/oauth/**";
+
+    public static final String OAUTH_AUTHORIZE = "/oauth/authorize";
+
+    public static final String OAUTH_CHECK_TOKEN = "/oauth/check_token";
+
+    public static final String OAUTH_CONFIRM_ACCESS = "/oauth/confirm_access";
+
+    public static final String OAUTH_TOKEN = "/oauth/token";
+
+    public static final String OAUTH_TOKEN_KEY = "/oauth/token_key";
+
+    public static final String OAUTH_ERROR = "/oauth/error";
+}

+ 16 - 10
febs-common/src/main/java/cc/mrbird/febs/common/entity/FebsConstant.java → febs-common/src/main/java/cc/mrbird/febs/common/entity/constant/FebsConstant.java

@@ -1,6 +1,8 @@
-package cc.mrbird.febs.common.entity;
+package cc.mrbird.febs.common.entity.constant;
 
 /**
+ * FEBS系统常量类
+ *
  * @author MrBird
  */
 public class FebsConstant {
@@ -28,15 +30,6 @@ public class FebsConstant {
      */
     public static final String[] VALID_FILE_TYPE = {"xlsx", "zip"};
 
-    /**
-     * gif类型
-     */
-    public static final String GIF = "gif";
-    /**
-     * png类型
-     */
-    public static final String PNG = "png";
-
     /**
      * 验证码 key前缀
      */
@@ -47,4 +40,17 @@ public class FebsConstant {
      */
     public static final String ASYNC_POOL = "febsAsyncThreadPool";
 
+    /**
+     * OAUTH2 令牌类型 https://oauth.net/2/bearer-tokens/
+     */
+    public static final String OAUTH2_TOKEN_TYPE = "bearer";
+    /**
+     * Java默认临时目录
+     */
+    public static final String JAVA_TEMP_DIR = "java.io.tmpdir";
+    /**
+     * utf-8
+     */
+    public static final String UTF8 = "utf-8";
+
 }

+ 1 - 2
febs-common/src/main/java/cc/mrbird/febs/common/entity/FebsServerConstant.java → febs-common/src/main/java/cc/mrbird/febs/common/entity/constant/FebsServerConstant.java

@@ -1,4 +1,4 @@
-package cc.mrbird.febs.common.entity;
+package cc.mrbird.febs.common.entity.constant;
 
 /**
  * @author MrBird
@@ -11,7 +11,6 @@ public class FebsServerConstant {
     public static final String FEBS_GATEWAY = "FEBS-Gateway";
     public static final String FEBS_MONITOR = "FEBS-Monitor";
     public static final String FEBS_MONITOR_ADMIN = "FEBS-Monitor_Admin";
-    public static final String FEBS_REGISTER = "FEBS-Register";
     public static final String FEBS_SERVER = "FEBS-Server";
     public static final String FEBS_SERVER_SYSTEM= "FEBS-Server-System";
     public static final String FEBS_SERVER_TEST= "FEBS-Server-Test";

+ 30 - 0
febs-common/src/main/java/cc/mrbird/febs/common/entity/constant/GrantTypeConstant.java

@@ -0,0 +1,30 @@
+package cc.mrbird.febs.common.entity.constant;
+
+/**
+ * 认证类型常量类
+ *
+ * @author MrBird
+ */
+public class GrantTypeConstant {
+
+    /**
+     * 刷新模式
+     */
+    public static final String REFRESH_TOKEN = "refresh_token";
+    /**
+     * 授权码模式
+     */
+    public static final String AUTHORIZATION_CODE = "authorization_code";
+    /**
+     * 客户端模式
+     */
+    public static final String CLIENT_CREDENTIALS = "client_credentials";
+    /**
+     * 密码模式
+     */
+    public static final String PASSWORD = "password";
+    /**
+     * 简化模式
+     */
+    public static final String IMPLICIT = "implicit";
+}

+ 18 - 0
febs-common/src/main/java/cc/mrbird/febs/common/entity/constant/ImageTypeConstant.java

@@ -0,0 +1,18 @@
+package cc.mrbird.febs.common.entity.constant;
+
+/**
+ * 图片类型常量类
+ *
+ * @author MrBird
+ */
+public class ImageTypeConstant {
+
+    /**
+     * gif类型
+     */
+    public static final String GIF = "gif";
+    /**
+     * png类型
+     */
+    public static final String PNG = "png";
+}

+ 23 - 0
febs-common/src/main/java/cc/mrbird/febs/common/entity/constant/ParamsConstant.java

@@ -0,0 +1,23 @@
+package cc.mrbird.febs.common.entity.constant;
+
+/**
+ * 请求参数常量
+ *
+ * @author MrBird
+ */
+public class ParamsConstant {
+
+    /**
+     * 验证码 key
+     */
+    public static final String VALIDATE_CODE_KEY = "key";
+    /**
+     * 验证码 code
+     */
+    public static final String VALIDATE_CODE_CODE = "code";
+    /**
+     * 认证类型参数 key
+     */
+    public static final String GRANT_TYPE = "grant_type";
+
+}

+ 1 - 1
febs-common/src/main/java/cc/mrbird/febs/common/interceptor/FebsServerProtectInterceptor.java

@@ -1,6 +1,6 @@
 package cc.mrbird.febs.common.interceptor;
 
-import cc.mrbird.febs.common.entity.FebsConstant;
+import cc.mrbird.febs.common.entity.constant.FebsConstant;
 import cc.mrbird.febs.common.entity.FebsResponse;
 import cc.mrbird.febs.common.utils.FebsUtil;
 import org.apache.commons.lang3.StringUtils;

+ 1 - 0
febs-common/src/main/java/cc/mrbird/febs/common/selector/FebsCloudApplicationSelector.java

@@ -14,6 +14,7 @@ import javax.annotation.Nonnull;
 public class FebsCloudApplicationSelector implements ImportSelector {
 
     @Override
+    @SuppressWarnings("all")
     public String[] selectImports(@Nonnull AnnotationMetadata annotationMetadata) {
         return new String[]{
                 FebsAuthExceptionConfigure.class.getName(),

+ 3 - 3
febs-common/src/main/java/cc/mrbird/febs/common/utils/FileUtil.java

@@ -1,6 +1,6 @@
 package cc.mrbird.febs.common.utils;
 
-import cc.mrbird.febs.common.entity.FebsConstant;
+import cc.mrbird.febs.common.entity.constant.FebsConstant;
 import com.google.common.base.Preconditions;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.ArrayUtils;
@@ -64,9 +64,9 @@ public class FileUtil {
         if (!fileTypeIsValid(fileType)) {
             throw new Exception("暂不支持该类型文件下载");
         }
-        response.setHeader(HttpHeaders.CONTENT_DISPOSITION, "attachment;fileName=" + java.net.URLEncoder.encode(fileName, "utf-8"));
+        response.setHeader(HttpHeaders.CONTENT_DISPOSITION, "attachment;fileName=" + java.net.URLEncoder.encode(fileName, FebsConstant.UTF8));
         response.setContentType(MediaType.MULTIPART_FORM_DATA_VALUE);
-        response.setCharacterEncoding("utf-8");
+        response.setCharacterEncoding(FebsConstant.UTF8);
         try (InputStream inputStream = new FileInputStream(file); OutputStream os = response.getOutputStream()) {
             byte[] b = new byte[2048];
             int length;

+ 1 - 3
febs-common/src/main/java/cc/mrbird/febs/common/utils/IPUtil.java → febs-common/src/main/java/cc/mrbird/febs/common/utils/ServletRequestIPUtil.java

@@ -1,13 +1,11 @@
 package cc.mrbird.febs.common.utils;
 
-import org.springframework.http.HttpHeaders;
-
 import javax.servlet.http.HttpServletRequest;
 
 /**
  * @author MrBird
  */
-public class IPUtil {
+public class ServletRequestIPUtil {
 
 	private static final String UNKNOWN = "unknown";
 

+ 1 - 1
febs-common/src/main/java/cc/mrbird/febs/common/utils/SortUtil.java

@@ -1,6 +1,6 @@
 package cc.mrbird.febs.common.utils;
 
-import cc.mrbird.febs.common.entity.FebsConstant;
+import cc.mrbird.febs.common.entity.constant.FebsConstant;
 import cc.mrbird.febs.common.entity.QueryRequest;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.OrderItem;

+ 0 - 2
febs-common/src/main/java/cc/mrbird/febs/common/utils/SpringContextUtil.java

@@ -3,7 +3,6 @@ package cc.mrbird.febs.common.utils;
 import org.springframework.beans.BeansException;
 import org.springframework.context.ApplicationContext;
 import org.springframework.context.ApplicationContextAware;
-import org.springframework.stereotype.Component;
 
 /**
  * 用于从 IOC容器中获取 Bean
@@ -11,7 +10,6 @@ import org.springframework.stereotype.Component;
  * @author MrBird
  *
  */
-@Component
 public class SpringContextUtil implements ApplicationContextAware {
 	private static ApplicationContext applicationContext;
 

+ 2 - 1
febs-gateway/src/main/java/cc/mrbird/febs/gateway/configure/FebsGateWayCorsConfigure.java

@@ -1,5 +1,6 @@
 package cc.mrbird.febs.gateway.configure;
 
+import cc.mrbird.febs.common.entity.constant.EndpointConstant;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.web.cors.CorsConfiguration;
@@ -21,7 +22,7 @@ public class FebsGateWayCorsConfigure {
         cors.addAllowedOrigin(CorsConfiguration.ALL);
         cors.addAllowedHeader(CorsConfiguration.ALL);
         cors.addAllowedMethod(CorsConfiguration.ALL);
-        source.registerCorsConfiguration("/**", cors);
+        source.registerCorsConfiguration(EndpointConstant.ALL, cors);
         return new CorsWebFilter(source);
     }
 

+ 3 - 0
febs-gateway/src/main/java/cc/mrbird/febs/gateway/configure/FebsGatewaySentinelConfigure.java

@@ -56,6 +56,9 @@ public class FebsGatewaySentinelConfigure {
         initGatewayRules();
     }
 
+    /**
+     * 验证码限流
+     */
     private void initGatewayRules() {
         Set<ApiDefinition> definitions = new HashSet<>();
         Set<ApiPredicateItem> predicateItems = new HashSet<>();

+ 3 - 2
febs-gateway/src/main/java/cc/mrbird/febs/gateway/filter/FebsGatewayRequestFilter.java

@@ -1,7 +1,7 @@
 package cc.mrbird.febs.gateway.filter;
 
-import cc.mrbird.febs.common.entity.FebsConstant;
 import cc.mrbird.febs.common.entity.FebsResponse;
+import cc.mrbird.febs.common.entity.constant.FebsConstant;
 import cc.mrbird.febs.gateway.properties.FebsGatewayProperties;
 import com.alibaba.fastjson.JSONObject;
 import lombok.extern.slf4j.Slf4j;
@@ -55,7 +55,8 @@ public class FebsGatewayRequestFilter implements GlobalFilter {
         printLog(exchange);
 
         byte[] token = Base64Utils.encode((FebsConstant.GATEWAY_TOKEN_VALUE).getBytes());
-        ServerHttpRequest build = request.mutate().header(FebsConstant.GATEWAY_TOKEN_HEADER, new String(token)).build();
+        String[] headerValues = {new String(token)};
+        ServerHttpRequest build = request.mutate().header(FebsConstant.GATEWAY_TOKEN_HEADER, headerValues).build();
         ServerWebExchange newExchange = exchange.mutate().request(build).build();
         return chain.filter(newExchange);
     }

+ 4 - 5
febs-gateway/src/main/java/cc/mrbird/febs/gateway/runner/StartedUpRunner.java

@@ -1,6 +1,6 @@
 package cc.mrbird.febs.gateway.runner;
 
-import cc.mrbird.febs.common.entity.FebsServerConstant;
+import cc.mrbird.febs.common.entity.constant.FebsServerConstant;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
@@ -24,10 +24,9 @@ public class StartedUpRunner implements ApplicationRunner {
     @Override
     public void run(ApplicationArguments args) {
         if (context.isActive()) {
-            log.info(" __    ___   _      ___   _     ____ _____  ____ ");
-            log.info("/ /`  / / \\ | |\\/| | |_) | |   | |_   | |  | |_  ");
-            log.info("\\_\\_, \\_\\_/ |_|  | |_|   |_|__ |_|__  |_|  |_|__ ");
-            log.info("                                                      ");
+            log.info(" +-+-+-+-+-+-+-+-+");
+            log.info(" |c|o|m|p|l|e|t|e|");
+            log.info(" +-+-+-+-+-+-+-+-+");
             log.info("{} 启动完毕,时间:{}", applicationName, LocalDateTime.now());
         }
     }

+ 3 - 4
febs-monitor/febs-monitor-admin/src/main/java/cc/mrbird/febs/monitor/admin/runner/StartedUpRunner.java

@@ -25,10 +25,9 @@ public class StartedUpRunner implements ApplicationRunner {
     @Override
     public void run(ApplicationArguments args) {
         if (context.isActive()) {
-            log.info(" __    ___   _      ___   _     ____ _____  ____ ");
-            log.info("/ /`  / / \\ | |\\/| | |_) | |   | |_   | |  | |_  ");
-            log.info("\\_\\_, \\_\\_/ |_|  | |_|   |_|__ |_|__  |_|  |_|__ ");
-            log.info("                                                      ");
+            log.info(" +-+-+-+-+-+-+-+-+");
+            log.info(" |c|o|m|p|l|e|t|e|");
+            log.info(" +-+-+-+-+-+-+-+-+");
             log.info("{} 启动完毕,时间:{}", applicationName, LocalDateTime.now());
         }
     }

+ 3 - 2
febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/configure/FebsServerSystemResourceServerConfigure.java

@@ -1,5 +1,6 @@
 package cc.mrbird.febs.server.system.configure;
 
+import cc.mrbird.febs.common.entity.constant.EndpointConstant;
 import cc.mrbird.febs.common.handler.FebsAccessDeniedHandler;
 import cc.mrbird.febs.common.handler.FebsAuthExceptionEntryPoint;
 import cc.mrbird.febs.server.system.properties.FebsServerSystemProperties;
@@ -32,11 +33,11 @@ public class FebsServerSystemResourceServerConfigure extends ResourceServerConfi
         String[] anonUrls = StringUtils.splitByWholeSeparatorPreserveAllTokens(properties.getAnonUrl(), ",");
 
         http.csrf().disable()
-                .requestMatchers().antMatchers("/**")
+                .requestMatchers().antMatchers(EndpointConstant.ALL)
                 .and()
                 .authorizeRequests()
                 .antMatchers(anonUrls).permitAll()
-                .antMatchers("/**").authenticated()
+                .antMatchers(EndpointConstant.ALL).authenticated()
                 .and().httpBasic();
     }
 

+ 4 - 2
febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/configure/FebsWebConfigure.java

@@ -1,10 +1,12 @@
 package cc.mrbird.febs.server.system.configure;
 
+import cc.mrbird.febs.common.entity.constant.FebsConstant;
 import cc.mrbird.febs.server.system.properties.FebsServerSystemProperties;
 import cc.mrbird.febs.server.system.properties.FesbSwaggerProperties;
 import com.baomidou.mybatisplus.core.parser.ISqlParser;
 import com.baomidou.mybatisplus.extension.parsers.BlockAttackSqlParser;
 import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
@@ -37,7 +39,7 @@ public class FebsWebConfigure {
     /**
      * 注册异步线程池
      */
-    @Bean("febsAsyncThreadPool")
+    @Bean(FebsConstant.ASYNC_POOL)
     public ThreadPoolTaskExecutor asyncThreadPoolTaskExecutor() {
         ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
         executor.setCorePoolSize(5);
@@ -109,7 +111,7 @@ public class FebsWebConfigure {
 
     private AuthorizationScope[] scopes(FesbSwaggerProperties swagger) {
         return new AuthorizationScope[]{
-                new AuthorizationScope(swagger.getScope(), "")
+                new AuthorizationScope(swagger.getScope(), StringUtils.EMPTY)
         };
     }
 }

+ 5 - 4
febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/helper/GeneratorHelper.java

@@ -1,6 +1,7 @@
 package cc.mrbird.febs.server.system.helper;
 
 import cc.mrbird.febs.common.annotation.Helper;
+import cc.mrbird.febs.common.entity.constant.FebsConstant;
 import cc.mrbird.febs.common.entity.system.Column;
 import cc.mrbird.febs.common.entity.system.GeneratorConfig;
 import cc.mrbird.febs.common.entity.system.GeneratorConstant;
@@ -93,7 +94,7 @@ public class GeneratorHelper {
         generateFileByTemplate(templateName, mapperXmlFile, data);
     }
 
-    @SuppressWarnings("UnstableApiUsage")
+    @SuppressWarnings("all")
     private void generateFileByTemplate(String templateName, File file, Object data) throws Exception {
         Template template = getTemplate(templateName);
         Files.createParentDirs(file);
@@ -130,12 +131,12 @@ public class GeneratorHelper {
         String templatePath = GeneratorHelper.class.getResource("/generator/templates/").getPath();
         File file = new File(templatePath);
         if (!file.exists()) {
-            templatePath = System.getProperties().getProperty("java.io.tmpdir");
-            file = new File(templatePath + "/" + templateName);
+            templatePath = System.getProperties().getProperty(FebsConstant.JAVA_TEMP_DIR);
+            file = new File(templatePath + File.separator + templateName);
             FileUtils.copyInputStreamToFile(Objects.requireNonNull(AddressUtil.class.getClassLoader().getResourceAsStream("classpath:generator/templates/" + templateName)), file);
         }
         configuration.setDirectoryForTemplateLoading(new File(templatePath));
-        configuration.setDefaultEncoding("UTF-8");
+        configuration.setDefaultEncoding(FebsConstant.UTF8);
         configuration.setTemplateExceptionHandler(TemplateExceptionHandler.IGNORE_HANDLER);
         return configuration.getTemplate(templateName);
 

+ 6 - 9
febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/runner/StartedUpRunner.java

@@ -1,8 +1,7 @@
 package cc.mrbird.febs.server.system.runner;
 
-import cc.mrbird.febs.common.entity.FebsServerConstant;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import cc.mrbird.febs.common.entity.constant.FebsServerConstant;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.boot.ApplicationArguments;
@@ -12,11 +11,10 @@ import org.springframework.stereotype.Component;
 
 import java.time.LocalDateTime;
 
+@Slf4j
 @Component
 public class StartedUpRunner implements ApplicationRunner {
 
-    private Logger log = LoggerFactory.getLogger(this.getClass());
-
     @Autowired
     private ConfigurableApplicationContext context;
 
@@ -26,10 +24,9 @@ public class StartedUpRunner implements ApplicationRunner {
     @Override
     public void run(ApplicationArguments args) {
         if (context.isActive()) {
-            log.info(" __    ___   _      ___   _     ____ _____  ____ ");
-            log.info("/ /`  / / \\ | |\\/| | |_) | |   | |_   | |  | |_  ");
-            log.info("\\_\\_, \\_\\_/ |_|  | |_|   |_|__ |_|__  |_|  |_|__ ");
-            log.info("                                                      ");
+            log.info(" +-+-+-+-+-+-+-+-+");
+            log.info(" |c|o|m|p|l|e|t|e|");
+            log.info(" +-+-+-+-+-+-+-+-+");
             log.info("{} 启动完毕,时间:{}", applicationName, LocalDateTime.now());
         }
     }

+ 1 - 1
febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/ILogService.java

@@ -1,7 +1,7 @@
 package cc.mrbird.febs.server.system.service;
 
 
-import cc.mrbird.febs.common.entity.FebsConstant;
+import cc.mrbird.febs.common.entity.constant.FebsConstant;
 import cc.mrbird.febs.common.entity.QueryRequest;
 import cc.mrbird.febs.common.entity.system.Log;
 import com.baomidou.mybatisplus.core.metadata.IPage;

+ 1 - 1
febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/impl/DeptServiceImpl.java

@@ -1,7 +1,7 @@
 package cc.mrbird.febs.server.system.service.impl;
 
 import cc.mrbird.febs.common.entity.DeptTree;
-import cc.mrbird.febs.common.entity.FebsConstant;
+import cc.mrbird.febs.common.entity.constant.FebsConstant;
 import cc.mrbird.febs.common.entity.QueryRequest;
 import cc.mrbird.febs.common.entity.Tree;
 import cc.mrbird.febs.common.entity.system.Dept;

+ 1 - 1
febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/impl/GeneratorServiceImpl.java

@@ -1,6 +1,6 @@
 package cc.mrbird.febs.server.system.service.impl;
 
-import cc.mrbird.febs.common.entity.FebsConstant;
+import cc.mrbird.febs.common.entity.constant.FebsConstant;
 import cc.mrbird.febs.common.entity.QueryRequest;
 import cc.mrbird.febs.common.entity.system.Column;
 import cc.mrbird.febs.common.entity.system.Table;

+ 3 - 3
febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/impl/LogServiceImpl.java

@@ -1,10 +1,10 @@
 package cc.mrbird.febs.server.system.service.impl;
 
 
-import cc.mrbird.febs.common.entity.FebsConstant;
 import cc.mrbird.febs.common.entity.QueryRequest;
+import cc.mrbird.febs.common.entity.constant.FebsConstant;
 import cc.mrbird.febs.common.entity.system.Log;
-import cc.mrbird.febs.common.utils.IPUtil;
+import cc.mrbird.febs.common.utils.ServletRequestIPUtil;
 import cc.mrbird.febs.common.utils.SortUtil;
 import cc.mrbird.febs.server.system.mapper.LogMapper;
 import cc.mrbird.febs.server.system.service.ILogService;
@@ -74,7 +74,7 @@ public class LogServiceImpl extends ServiceImpl<LogMapper, Log> implements ILogS
     public void saveLog(ProceedingJoinPoint point, Method method, HttpServletRequest request, String operation, String username, long start) {
         Log Log = new Log();
         // 设置 IP地址
-        String ip = IPUtil.getIpAddr(request);
+        String ip = ServletRequestIPUtil.getIpAddr(request);
         Log.setIp(ip);
         // 设置操作用户
         Log.setUsername(username);

+ 3 - 3
febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/impl/LoginLogServiceImpl.java

@@ -1,11 +1,11 @@
 package cc.mrbird.febs.server.system.service.impl;
 
-import cc.mrbird.febs.common.entity.FebsConstant;
 import cc.mrbird.febs.common.entity.QueryRequest;
+import cc.mrbird.febs.common.entity.constant.FebsConstant;
 import cc.mrbird.febs.common.entity.system.LoginLog;
 import cc.mrbird.febs.common.entity.system.SystemUser;
 import cc.mrbird.febs.common.utils.HttpContextUtil;
-import cc.mrbird.febs.common.utils.IPUtil;
+import cc.mrbird.febs.common.utils.ServletRequestIPUtil;
 import cc.mrbird.febs.common.utils.SortUtil;
 import cc.mrbird.febs.server.system.mapper.LoginLogMapper;
 import cc.mrbird.febs.server.system.service.ILoginLogService;
@@ -56,7 +56,7 @@ public class LoginLogServiceImpl extends ServiceImpl<LoginLogMapper, LoginLog> i
     public void saveLoginLog(LoginLog loginLog) {
         loginLog.setLoginTime(new Date());
         HttpServletRequest request = HttpContextUtil.getHttpServletRequest();
-        String ip = IPUtil.getIpAddr(request);
+        String ip = ServletRequestIPUtil.getIpAddr(request);
         loginLog.setIp(ip);
         loginLog.setLocation(AddressUtil.getCityInfo(ip));
         this.save(loginLog);

+ 1 - 1
febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/impl/RoleServiceImpl.java

@@ -1,6 +1,6 @@
 package cc.mrbird.febs.server.system.service.impl;
 
-import cc.mrbird.febs.common.entity.FebsConstant;
+import cc.mrbird.febs.common.entity.constant.FebsConstant;
 import cc.mrbird.febs.common.entity.QueryRequest;
 import cc.mrbird.febs.common.entity.system.Role;
 import cc.mrbird.febs.common.entity.system.RoleMenu;

+ 1 - 1
febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/impl/UserServiceImpl.java

@@ -1,6 +1,6 @@
 package cc.mrbird.febs.server.system.service.impl;
 
-import cc.mrbird.febs.common.entity.FebsConstant;
+import cc.mrbird.febs.common.entity.constant.FebsConstant;
 import cc.mrbird.febs.common.entity.QueryRequest;
 import cc.mrbird.febs.common.entity.system.SystemUser;
 import cc.mrbird.febs.common.entity.system.UserRole;

+ 2 - 1
febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/utils/AddressUtil.java

@@ -1,5 +1,6 @@
 package cc.mrbird.febs.server.system.utils;
 
+import cc.mrbird.febs.common.entity.constant.FebsConstant;
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.lionsoul.ip2region.DataBlock;
@@ -29,7 +30,7 @@ public class AddressUtil {
             String dbPath = AddressUtil.class.getResource("/ip2region/ip2region.db").getPath();
             File file = new File(dbPath);
             if (!file.exists()) {
-                String tmpDir = System.getProperties().getProperty("java.io.tmpdir");
+                String tmpDir = System.getProperties().getProperty(FebsConstant.JAVA_TEMP_DIR);
                 dbPath = tmpDir + "ip.db";
                 file = new File(dbPath);
                 InputStream resourceAsStream = AddressUtil.class.getClassLoader().getResourceAsStream("classpath:ip2region/ip2region.db");

+ 3 - 2
febs-server/febs-server-test/src/main/java/cc/mrbird/febs/server/test/configure/FebsServerTestResourceServerConfigure.java

@@ -1,5 +1,6 @@
 package cc.mrbird.febs.server.test.configure;
 
+import cc.mrbird.febs.common.entity.constant.EndpointConstant;
 import cc.mrbird.febs.common.handler.FebsAccessDeniedHandler;
 import cc.mrbird.febs.common.handler.FebsAuthExceptionEntryPoint;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -26,11 +27,11 @@ public class FebsServerTestResourceServerConfigure extends ResourceServerConfigu
     @Override
     public void configure(HttpSecurity http) throws Exception {
         http.csrf().disable()
-                .requestMatchers().antMatchers("/**")
+                .requestMatchers().antMatchers(EndpointConstant.ALL)
                 .and()
                 .authorizeRequests()
                 .antMatchers("/actuator/**").permitAll()
-                .antMatchers("/**").authenticated()
+                .antMatchers(EndpointConstant.ALL).authenticated()
                 .and()
                 .httpBasic();
     }

+ 4 - 5
febs-server/febs-server-test/src/main/java/cc/mrbird/febs/server/test/runner/StartedUpRunner.java

@@ -1,6 +1,6 @@
 package cc.mrbird.febs.server.test.runner;
 
-import cc.mrbird.febs.common.entity.FebsServerConstant;
+import cc.mrbird.febs.common.entity.constant.FebsServerConstant;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
@@ -24,10 +24,9 @@ public class StartedUpRunner implements ApplicationRunner {
     @Override
     public void run(ApplicationArguments args) {
         if (context.isActive()) {
-            log.info(" __    ___   _      ___   _     ____ _____  ____ ");
-            log.info("/ /`  / / \\ | |\\/| | |_) | |   | |_   | |  | |_  ");
-            log.info("\\_\\_, \\_\\_/ |_|  | |_|   |_|__ |_|__  |_|  |_|__ ");
-            log.info("                                                      ");
+            log.info(" +-+-+-+-+-+-+-+-+");
+            log.info(" |c|o|m|p|l|e|t|e|");
+            log.info(" +-+-+-+-+-+-+-+-+");
             log.info("{} 启动完毕,时间:{}", applicationName, LocalDateTime.now());
         }
     }

+ 1 - 1
febs-server/febs-server-test/src/main/java/cc/mrbird/febs/server/test/service/IUserService.java

@@ -1,7 +1,7 @@
 package cc.mrbird.febs.server.test.service;
 
 import cc.mrbird.febs.common.entity.FebsResponse;
-import cc.mrbird.febs.common.entity.FebsServerConstant;
+import cc.mrbird.febs.common.entity.constant.FebsServerConstant;
 import cc.mrbird.febs.common.entity.QueryRequest;
 import cc.mrbird.febs.common.entity.system.SystemUser;
 import cc.mrbird.febs.server.test.service.fallback.UserServiceFallback;