From 47b9f7a2708a63bbd09d65552ae8fc6d77b80b4d Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期日, 01 十二月 2024 03:03:24 +0800
Subject: [PATCH] 优化代码
---
service-api/src/main/java/com/java110/api/smo/impl/ApiServiceSMOImpl.java | 48 +++++++++++++++++++++++++++++++++++++-----------
1 files changed, 37 insertions(+), 11 deletions(-)
diff --git a/service-api/src/main/java/com/java110/api/smo/impl/ApiServiceSMOImpl.java b/service-api/src/main/java/com/java110/api/smo/impl/ApiServiceSMOImpl.java
index 7528df2..8c4991b 100644
--- a/service-api/src/main/java/com/java110/api/smo/impl/ApiServiceSMOImpl.java
+++ b/service-api/src/main/java/com/java110/api/smo/impl/ApiServiceSMOImpl.java
@@ -7,6 +7,7 @@
import com.java110.core.client.RestTemplate;
import com.java110.core.context.ApiDataFlow;
import com.java110.core.context.DataFlow;
+import com.java110.core.context.Environment;
import com.java110.core.event.service.api.ServiceDataFlowEventPublishing;
import com.java110.core.factory.AuthenticationFactory;
import com.java110.core.factory.DataFlowFactory;
@@ -26,6 +27,7 @@
import com.java110.utils.constant.MappingConstant;
import com.java110.utils.constant.ResponseConstant;
import com.java110.utils.exception.*;
+import com.java110.utils.factory.ApplicationContextFactory;
import com.java110.utils.kafka.KafkaFactory;
import com.java110.utils.log.LoggerEngine;
import com.java110.utils.util.BootReplaceUtil;
@@ -424,6 +426,12 @@
ResponseEntity responseEntity = null;
//閰嶇疆c_service 鏃惰娉ㄦ剰 濡傛灉鏄互out 寮�澶寸殑璋冪敤澶栭儴鐨勫湴鍧�
+ RestTemplate restTemplate ;
+ if (Environment.isStartBootWay()) {
+ restTemplate = ApplicationContextFactory.getBean("outRestTemplate", RestTemplate.class);
+ } else {
+ restTemplate = ApplicationContextFactory.getBean("restTemplate", RestTemplate.class);
+ }
try {
if (CommonConstant.HTTP_METHOD_GET.equals(service.getMethod())) {
@@ -439,9 +447,9 @@
requestUrl = BootReplaceUtil.replaceServiceName(requestUrl);
- responseEntity = outRestTemplate.exchange(requestUrl, HttpMethod.GET, httpEntity, String.class);
+ responseEntity = restTemplate.exchange(requestUrl, HttpMethod.GET, httpEntity, String.class);
} else if (CommonConstant.HTTP_METHOD_PUT.equals(service.getMethod())) {
- responseEntity = outRestTemplate.exchange(service.getUrl(), HttpMethod.PUT, httpEntity, String.class);
+ responseEntity = restTemplate.exchange(service.getUrl(), HttpMethod.PUT, httpEntity, String.class);
} else if (CommonConstant.HTTP_METHOD_DELETE.equals(service.getMethod())) {
String requestUrl = dataFlow.getRequestHeaders().get("REQUEST_URL");
if (!StringUtil.isNullOrNone(requestUrl)) {
@@ -452,11 +460,11 @@
requestUrl = service.getUrl() + "?" + param;
}
}
- responseEntity = outRestTemplate.exchange(requestUrl, HttpMethod.DELETE, httpEntity, String.class);
+ responseEntity = restTemplate.exchange(requestUrl, HttpMethod.DELETE, httpEntity, String.class);
} else {
String requestUrl = BootReplaceUtil.replaceServiceName(service.getUrl());
- responseEntity = outRestTemplate.exchange(requestUrl, HttpMethod.POST, httpEntity, String.class);
+ responseEntity = restTemplate.exchange(requestUrl, HttpMethod.POST, httpEntity, String.class);
}
} catch (HttpStatusCodeException e) { //杩欓噷spring 妗嗘灦 鍦�4XX 鎴� 5XX 鏃舵姏鍑� HttpServerErrorException 寮傚父锛岄渶瑕侀噸鏂板皝瑁呬竴涓�
responseEntity = new ResponseEntity<String>(e.getResponseBodyAsString(), e.getStatusCode());
@@ -481,7 +489,16 @@
String serviceCode = appService.getServiceCode();
serviceCode = serviceCode.startsWith("/") ? serviceCode : ("/" + serviceCode);
- String requestUrl = "http://127.0.0.1:8008" + serviceCode;
+ //String requestUrl = "http://127.0.0.1:8008" + serviceCode;
+ String requestUrl = serviceCode;
+ RestTemplate restTemplate ;
+ if (Environment.isStartBootWay()) {
+ requestUrl = Environment.BOOT_PATH + requestUrl;
+ restTemplate = ApplicationContextFactory.getBean("outRestTemplate", RestTemplate.class);
+ } else {
+ requestUrl = appService.getUrl() + requestUrl;
+ restTemplate = ApplicationContextFactory.getBean("restTemplate", RestTemplate.class);
+ }
ResponseEntity responseEntity = null;
if (!StringUtil.isNullOrNone(orgRequestUrl)) {
@@ -490,13 +507,13 @@
}
try {
if (CommonConstant.HTTP_METHOD_GET.equals(appService.getMethod())) {
- responseEntity = outRestTemplate.exchange(requestUrl, HttpMethod.GET, httpEntity, String.class);
+ responseEntity = restTemplate.exchange(requestUrl, HttpMethod.GET, httpEntity, String.class);
} else if (CommonConstant.HTTP_METHOD_PUT.equals(appService.getMethod())) {
- responseEntity = outRestTemplate.exchange(requestUrl, HttpMethod.PUT, httpEntity, String.class);
+ responseEntity = restTemplate.exchange(requestUrl, HttpMethod.PUT, httpEntity, String.class);
} else if (CommonConstant.HTTP_METHOD_DELETE.equals(appService.getMethod())) {
- responseEntity = outRestTemplate.exchange(requestUrl, HttpMethod.DELETE, httpEntity, String.class);
+ responseEntity = restTemplate.exchange(requestUrl, HttpMethod.DELETE, httpEntity, String.class);
} else {
- responseEntity = outRestTemplate.exchange(requestUrl, HttpMethod.POST, httpEntity, String.class);
+ responseEntity = restTemplate.exchange(requestUrl, HttpMethod.POST, httpEntity, String.class);
}
HttpHeaders headers = responseEntity.getHeaders();
String oId = "-1";
@@ -584,7 +601,8 @@
serviceCode = serviceCode.startsWith("/") ? serviceCode : ("/" + serviceCode);
//todo 缁勮璋冪敤寰湇鍔$殑鍦板潃
- String requestUrl = "http://127.0.0.1:8008/cmd" + serviceCode;
+ //String requestUrl = "http://127.0.0.1:8008/cmd" + serviceCode;
+ String requestUrl = "/cmd" + serviceCode;
//
ResponseEntity responseEntity = null;
//todo url 甯︿簡鍦板潃杩欓噷 鎷兼帴
@@ -595,7 +613,15 @@
try {
//todo http鐨勬柟寮忚皟鐢ㄥ井鏈嶅姟锛岀浉搴旂殑java绫诲彲浠ュ埌鐩稿簲寰湇鍔′笅鐨刢md涓嬫牴鎹畇erviceCode 鐨勫鎵�
//todo 杩欓噷浼氳皟鐢ㄥ埌 java110-service 妯″潡涓嬬殑 CmdApi 绫伙紝杩欎釜绫诲悇涓井鏈嶅姟閮戒細闆嗘垚
- responseEntity = outRestTemplate.exchange(requestUrl, HttpMethod.POST, httpEntity, String.class);
+ if (Environment.isStartBootWay()) {
+ requestUrl = Environment.BOOT_PATH + requestUrl;
+ restTemplate = ApplicationContextFactory.getBean("outRestTemplate", RestTemplate.class);
+ responseEntity = restTemplate.exchange(requestUrl, HttpMethod.POST, httpEntity, String.class);
+ } else {
+ requestUrl = appService.getUrl() + requestUrl;
+ restTemplate = ApplicationContextFactory.getBean("restTemplate", RestTemplate.class);
+ responseEntity = restTemplate.exchange(requestUrl, HttpMethod.POST, httpEntity, String.class);
+ }
HttpHeaders headers = responseEntity.getHeaders();
String oId = "-1";
if (headers.containsKey(OrderDto.O_ID)) {
--
Gitblit v1.8.0