diff --git a/blade-core-boot/src/main/java/org/springblade/core/boot/config/BladeExecutorConfiguration.java b/blade-core-boot/src/main/java/org/springblade/core/boot/config/BladeExecutorConfiguration.java deleted file mode 100644 index b21196b..0000000 --- a/blade-core-boot/src/main/java/org/springblade/core/boot/config/BladeExecutorConfiguration.java +++ /dev/null @@ -1,67 +0,0 @@ -/** - * Copyright (c) 2018-2099, Chill Zhuang 庄骞 (bladejava@qq.com). - *

- * Licensed under the GNU LESSER GENERAL PUBLIC LICENSE 3.0; - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.gnu.org/licenses/lgpl.html - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.springblade.core.boot.config; - -import lombok.AllArgsConstructor; -import org.springblade.core.boot.props.BladeAsyncProperties; -import org.springframework.aop.interceptor.AsyncUncaughtExceptionHandler; -import org.springframework.aop.interceptor.SimpleAsyncUncaughtExceptionHandler; -import org.springframework.boot.context.properties.EnableConfigurationProperties; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.scheduling.annotation.AsyncConfigurerSupport; -import org.springframework.scheduling.annotation.EnableAsync; -import org.springframework.scheduling.annotation.EnableScheduling; -import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; - -import java.util.concurrent.Executor; -import java.util.concurrent.ThreadPoolExecutor; - -/** - * 异步处理 - * - * @author Chill - */ -@Configuration -@EnableAsync -@EnableScheduling -@AllArgsConstructor -@EnableConfigurationProperties({ - BladeAsyncProperties.class -}) -public class BladeExecutorConfiguration extends AsyncConfigurerSupport { - - private final BladeAsyncProperties bladeAsyncProperties; - - @Override - @Bean(name = "taskExecutor") - public Executor getAsyncExecutor() { - ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); - executor.setCorePoolSize(bladeAsyncProperties.getCorePoolSize()); - executor.setMaxPoolSize(bladeAsyncProperties.getMaxPoolSize()); - executor.setQueueCapacity(bladeAsyncProperties.getQueueCapacity()); - executor.setKeepAliveSeconds(bladeAsyncProperties.getKeepAliveSeconds()); - executor.setThreadNamePrefix("async-executor-"); - executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy()); - return executor; - } - - @Override - public AsyncUncaughtExceptionHandler getAsyncUncaughtExceptionHandler() { - return new SimpleAsyncUncaughtExceptionHandler(); - } - -} diff --git a/blade-core-boot/src/main/resources/log/logback_dev.xml b/blade-core-boot/src/main/resources/log/logback_dev.xml index 684e7bb..40c1cb3 100644 --- a/blade-core-boot/src/main/resources/log/logback_dev.xml +++ b/blade-core-boot/src/main/resources/log/logback_dev.xml @@ -17,9 +17,9 @@ - - - + + + diff --git a/blade-core-boot/src/main/resources/log/logback_prod.xml b/blade-core-boot/src/main/resources/log/logback_prod.xml index e04db81..a2f9ce9 100644 --- a/blade-core-boot/src/main/resources/log/logback_prod.xml +++ b/blade-core-boot/src/main/resources/log/logback_prod.xml @@ -17,9 +17,9 @@ - - - + + + diff --git a/blade-core-boot/src/main/resources/log/logback_test.xml b/blade-core-boot/src/main/resources/log/logback_test.xml index e04db81..a2f9ce9 100644 --- a/blade-core-boot/src/main/resources/log/logback_test.xml +++ b/blade-core-boot/src/main/resources/log/logback_test.xml @@ -17,9 +17,9 @@ - - - + + + diff --git a/blade-core-secure/src/main/java/org/springblade/core/secure/utils/SecureUtil.java b/blade-core-secure/src/main/java/org/springblade/core/secure/utils/SecureUtil.java index 6f8847c..97155ea 100644 --- a/blade-core-secure/src/main/java/org/springblade/core/secure/utils/SecureUtil.java +++ b/blade-core-secure/src/main/java/org/springblade/core/secure/utils/SecureUtil.java @@ -18,7 +18,6 @@ package org.springblade.core.secure.utils; import io.jsonwebtoken.Claims; import io.jsonwebtoken.JwtBuilder; import io.jsonwebtoken.Jwts; -import io.jsonwebtoken.SignatureAlgorithm; import io.jsonwebtoken.security.Keys; import jakarta.servlet.http.HttpServletRequest; import lombok.SneakyThrows; @@ -33,8 +32,7 @@ import org.springblade.core.secure.provider.IClientDetailsService; import org.springblade.core.tool.constant.RoleConstant; import org.springblade.core.tool.utils.*; -import javax.crypto.spec.SecretKeySpec; -import java.security.Key; +import javax.crypto.SecretKey; import java.util.*; /** @@ -432,20 +430,17 @@ public class SecureUtil { if (!validateClient(clientDetails, clientId, clientSecret)) { throw new SecureException("客户端认证失败!"); } - SignatureAlgorithm signatureAlgorithm = SignatureAlgorithm.HS256; long nowMillis = System.currentTimeMillis(); Date now = new Date(nowMillis); - //生成签名密钥 - byte[] apiKeySecretBytes = Base64.getDecoder().decode(getBase64Security()); - Key signingKey = new SecretKeySpec(apiKeySecretBytes, signatureAlgorithm.getJcaName()); + // 生成签名密钥 + SecretKey signingKey = Keys.hmacShaKeyFor(Base64.getDecoder().decode(getBase64Security())); - //添加构成JWT的类 - JwtBuilder builder = Jwts.builder().setHeaderParam("typ", "JWT") - .setIssuer(issuer) - .setAudience(audience) - .signWith(signingKey); + // 添加构成JWT的类 + JwtBuilder builder = Jwts.builder().header().add("typ", "JWT") + .and().issuer(issuer).audience().add(audience) + .and().signWith(signingKey); //设置JWT参数 user.forEach(builder::claim);