feat(扩展 优化): 优化SDK在Springboot项目中的扩展体验

This commit is contained in:
lqyan
2024-08-19 12:01:08 +08:00
parent 88d7b7b65c
commit 4f2490e797
8 changed files with 39 additions and 69 deletions

View File

@@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<artifactId>jhinno-openapi-java-sdk</artifactId>
<version>2.0.2</version>
<version>2.0.3</version>
<packaging>jar</packaging>
<name>Jhinno OpenAPI SDK for Java</name>
<description>The Jhinno OpenAPI SDK for Java used for accessing Jhinno OpenApi Service</description>
@@ -14,7 +14,7 @@
<parent>
<groupId>com.jhinno</groupId>
<artifactId>jhinno-openapi-java-sdk-parent</artifactId>
<version>2.0.2</version>
<version>2.0.3</version>
</parent>
<dependencies>
@@ -77,13 +77,6 @@
</dependency>
</dependencies>
<distributionManagement>
<repository>
<id>jhinno-releases</id>
<url>http://192.168.87.22:8081/repository/maven-releases</url>
</repository>
</distributionManagement>
<build>
<plugins>
<plugin>

View File

@@ -24,13 +24,13 @@ public class JHClientConfig {
/**
* 初始化JHApi客户端
*/
public static final JHApiClient client = new JHApiClient("https://192.168.38.160/appform");
public static final JHApiClient client = new JHApiClient("https://172.17.0.5/appform");
public static final Map<Class<? extends JHApiExecution>, JHApiExecution> jhApiClientMap = new HashMap<>();
public static final String ACCESS_KEY = "35154207caa94be582e75da31ec8e9f2";
public static final String ACCESS_KEY = "3f03747f147942bd8debd81b6c9c6a80";
public static final String ACCESS_KEY_SECRET = "2cdb5ecbe51543ad9a08ad21c32e2dd9";
public static final String ACCESS_KEY_SECRET = "e0681859b91c499eb1d2c8e09cea3242";
static {
client.initDefaultApiClient();

View File

@@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<artifactId>jhinno-openapi-sdk-spring-boot-starter</artifactId>
<version>2.0.2</version>
<version>2.0.3</version>
<packaging>jar</packaging>
<name>Jhinno OpenAPI SDK for Java SpringBoot Starter</name>
<description>The Jhinno OpenAPI SDK for Java used for accessing Jhinno OpenApi Service</description>
@@ -14,7 +14,7 @@
<parent>
<groupId>com.jhinno</groupId>
<artifactId>jhinno-openapi-java-sdk-parent</artifactId>
<version>2.0.2</version>
<version>2.0.3</version>
</parent>
@@ -22,7 +22,7 @@
<dependency>
<groupId>com.jhinno</groupId>
<artifactId>jhinno-openapi-java-sdk</artifactId>
<version>2.0.2</version>
<version>2.0.3</version>
</dependency>
<dependency>
@@ -44,16 +44,8 @@
<optional>true</optional>
</dependency>
</dependencies>
<distributionManagement>
<repository>
<id>jhinno-releases</id>
<url>http://192.168.87.22:8081/repository/maven-releases</url>
</repository>
</distributionManagement>
<build>
<plugins>
<plugin>

View File

@@ -1,13 +1,12 @@
package com.jhinno.sdk.openapi.autoconfigure;
import com.jhinno.sdk.openapi.api.JHApiExecution;
import com.jhinno.sdk.openapi.api.app.JHAppApiExecution;
import com.jhinno.sdk.openapi.api.data.JHDataApiExecution;
import com.jhinno.sdk.openapi.api.file.JHFileApiExecution;
import com.jhinno.sdk.openapi.api.job.JHJobApiExecution;
import com.jhinno.sdk.openapi.api.organization.JHDepartmentApiExecution;
import com.jhinno.sdk.openapi.api.organization.JHUserApiExecution;
import com.jhinno.sdk.openapi.client.JHApiClient;
import com.jhinno.sdk.openapi.utils.JHOpenApiConfig;
import lombok.RequiredArgsConstructor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@@ -23,61 +22,34 @@ import org.springframework.context.annotation.Configuration;
public class JHOpenapiExecutionAutoconfigure {
private final JHOpenapiProperties properties;
private final JHApiClient client;
public void init(JHApiExecution apiExecution) {
apiExecution.setJhApiClient(client);
apiExecution.setForceGetToken(properties.isForceGetToken());
apiExecution.setAuthType(properties.getAuthType());
apiExecution.setAccessKey(properties.getAccessKey());
apiExecution.setAccessKeySecret(properties.getAccessKeySecret());
apiExecution.setTokenTimeout(properties.getTokenTimeout());
apiExecution.setTokenResidueTime(properties.getTokenResidueTime());
apiExecution.setUsedServerTime(properties.isUsedServerTime());
@Bean
public JHAppApiExecution appApiExecution(JHOpenApiConfig jhOpenApiConfig) {
return jhOpenApiConfig.configJHApiExecution(new JHAppApiExecution());
}
@Bean
public JHAppApiExecution appApiExecution() {
JHAppApiExecution jhAppApiExecution = new JHAppApiExecution();
init(jhAppApiExecution);
return jhAppApiExecution;
}
@Bean
public JHDataApiExecution dataApiExecution() {
JHDataApiExecution dataApiExecution = new JHDataApiExecution();
init(dataApiExecution);
return dataApiExecution;
public JHDataApiExecution dataApiExecution(JHOpenApiConfig jhOpenApiConfig) {
return jhOpenApiConfig.configJHApiExecution(new JHDataApiExecution());
}
@Bean
public JHFileApiExecution fileApiExecution() {
JHFileApiExecution fileApiExecution = new JHFileApiExecution();
init(fileApiExecution);
return fileApiExecution;
public JHFileApiExecution fileApiExecution(JHOpenApiConfig jhOpenApiConfig) {
return jhOpenApiConfig.configJHApiExecution(new JHFileApiExecution());
}
@Bean
public JHJobApiExecution jobApiExecution() {
JHJobApiExecution jobApiExecution = new JHJobApiExecution();
init(jobApiExecution);
return jobApiExecution;
public JHJobApiExecution jobApiExecution(JHOpenApiConfig jhOpenApiConfig) {
return jhOpenApiConfig.configJHApiExecution(new JHJobApiExecution());
}
@Bean
public JHDepartmentApiExecution departmentApiExecution() {
JHDepartmentApiExecution departmentApiExecution = new JHDepartmentApiExecution();
init(departmentApiExecution);
return departmentApiExecution;
public JHDepartmentApiExecution departmentApiExecution(JHOpenApiConfig jhOpenApiConfig) {
return jhOpenApiConfig.configJHApiExecution(new JHDepartmentApiExecution());
}
@Bean
public JHUserApiExecution userApiExecution() {
JHUserApiExecution userApiExecution = new JHUserApiExecution();
init(userApiExecution);
return userApiExecution;
public JHUserApiExecution userApiExecution(JHOpenApiConfig jhOpenApiConfig) {
return jhOpenApiConfig.configJHApiExecution(new JHUserApiExecution());
}
}

View File

@@ -13,7 +13,14 @@ public class JHOpenApiConfig {
private final JHApiClient client;
private final JHOpenapiProperties properties;
public <T extends JHApiExecution> T initJHApiExecution(T execution) {
/**
* 配置执行器
*
* @param execution 执行器
* @param <T> 执行器类型
* @return 配置的执行器
*/
public <T extends JHApiExecution> T configJHApiExecution(T execution) {
execution.setJhApiClient(client);
execution.setForceGetToken(properties.isForceGetToken());
execution.setAuthType(properties.getAuthType());

View File

@@ -1,3 +1,4 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.jhinno.sdk.openapi.autoconfigure.JHOpenapiClientAutoConfigure,\
com.jhinno.sdk.openapi.utils.JHOpenApiConfig,\
com.jhinno.sdk.openapi.autoconfigure.JHOpenapiExecutionAutoconfigure

View File

@@ -1,2 +1,3 @@
com.jhinno.sdk.openapi.autoconfigure.JHOpenapiClientAutoConfigure
com.jhinno.sdk.openapi.utils.JHOpenApiConfig
com.jhinno.sdk.openapi.autoconfigure.JHOpenapiExecutionAutoconfigure

10
pom.xml
View File

@@ -6,7 +6,7 @@
<groupId>com.jhinno</groupId>
<artifactId>jhinno-openapi-java-sdk-parent</artifactId>
<version>2.0.2</version>
<version>2.0.3</version>
<packaging>pom</packaging>
<name>Jhinno OpenAPI SDK for Java parent</name>
<description>The Jhinno OpenAPI SDK for Java used for accessing Jhinno OpenApi Service</description>
@@ -30,9 +30,13 @@
<distributionManagement>
<repository>
<id>jhinno-releases</id>
<url>http://192.168.87.22:8081/repository/maven-releases</url>
<id>yuchat</id>
<url>http://mirrors.yuchat.top/repository/maven-releases/</url>
</repository>
<!-- <repository>-->
<!-- <id>jhinno-releases</id>-->
<!-- <url>http://192.168.87.22:8081/repository/maven-releases</url>-->
<!-- </repository>-->
</distributionManagement>
<modules>