This is an automated email from the ASF dual-hosted git repository.
hefengen pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shenyu.git
The following commit(s) were added to refs/heads/master by this push:
new ef05727ae [type:feat] add apache and alibaba sdk dubbo example (#4199)
ef05727ae is described below
commit ef05727ae2d64b33c2899cb46baedc4d75b280ce
Author: mahaitao <[email protected]>
AuthorDate: Mon Nov 21 15:40:52 2022 +0800
[type:feat] add apache and alibaba sdk dubbo example (#4199)
Co-authored-by: mahaitao617 <[email protected]>
---
.../src/main/http/sdk-alibaba-dubbo-test-api.http | 90 ++++++++++++++++++++
.../consumer/api/ShenyuAlibabaDubboClientApi.java | 79 +++++++++++++++++
.../ShenyuAlibabaDubboSdkExampleController.java | 96 +++++++++++++++++++++
.../dubbo/consumer/dto/DubboRequestBody.java} | 56 +++++++++---
.../dubbo/consumer/dto/DubboTestSaveRequest.java | 90 ++++++++++++++++++++
.../src/main/http/sdk-apache-dubbo-test-api.http | 88 +++++++++++++++++++
.../consumer/api/ShenyuApacheDubboClientApi.java | 80 ++++++++++++++++-
.../ShenyuApacheDubboSdkExampleController.java | 99 +++++++++++++++++++++-
.../DubboRequestBody.java} | 56 +++++++++---
.../dubbo/consumer/dto/DubboTestSaveRequest.java | 90 ++++++++++++++++++++
10 files changed, 798 insertions(+), 26 deletions(-)
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-alibaba-dubbo-consumer/src/main/http/sdk-alibaba-dubbo-test-api.http
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-alibaba-dubbo-consumer/src/main/http/sdk-alibaba-dubbo-test-api.http
index a513a0128..8cdda9e7b 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-alibaba-dubbo-consumer/src/main/http/sdk-alibaba-dubbo-test-api.http
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-alibaba-dubbo-consumer/src/main/http/sdk-alibaba-dubbo-test-api.http
@@ -21,4 +21,94 @@ GET http://localhost:8899/sdk/dubbo/findAll
Accept: application/json
Content-Type: application/json
+### shengyu alibaba dubbo /sdk/dubbo/findList
+GET http://localhost:8899/sdk/dubbo/findList
+Accept: application/json
+Content-Type: application/json
+
+### shengyu alibaba dubbo /sdk/dubbo/findById
+GET http://localhost:8899/sdk/dubbo/findById?id=1
+Accept: application/json
+Content-Type: application/json
+
+### shengyu alibaba dubbo /sdk/dubbo/findByListId
+POST http://localhost:8899/sdk/dubbo/findByListId
+Accept: application/json
+Content-Type: application/json
+{
+ "ids":["1","2"]
+}
+
+### shengyu alibaba dubbo /sdk/dubbo/insert
+POST http://localhost:8899/sdk/dubbo/insert
+Accept: application/json
+Content-Type: application/json
+{
+ "id":1L,
+ "name":"helloworld"
+}
+
+### shengyu alibaba dubbo /sdk/dubbo/findByIdsAndName
+POST http://localhost:8899/sdk/dubbo/findByIdsAndName
+Accept: application/json
+Content-Type: application/json
+{
+ "ids":["1","2"],
+ "name":"333"
+}
+
+### shengyu alibaba dubbo /sdk/dubbo/findByArrayIdsAndName
+POST http://localhost:8899/sdk/dubbo/findByArrayIdsAndName
+Accept: application/json
+Content-Type: application/json
+{
+ "ids":[1,12],
+ "name":"999"
+}
+
+### shengyu alibaba dubbo /sdk/dubbo/saveComplexBeanTest
+POST http://localhost:8899/sdk/dubbo/saveComplexBeanTest
+Accept: application/json
+Content-Type: application/json
+{
+ "dubboTest":{
+ "id": "123",
+ "name": "test1"
+ },
+ "idLists": [
+ "1",
+ "2"
+ ],
+ "idMaps": {
+ }
+}
+
+### shengyu alibaba dubbo /sdk/dubbo/batchSave
+POST http://localhost:8899/sdk/dubbo/batchSave
+Accept: application/json
+Content-Type: application/json
+{
+ "dubboTestList": [
+ {
+ "name": "22222",
+ "id": "122"
+ }
+ ]
+}
+
+### shengyu alibaba dubbo /sdk/dubbo/batchSaveAndNameAndId
+POST http://localhost:8899/sdk/dubbo/batchSaveAndNameAndId
+Accept: application/json
+Content-Type: application/json
+{
+ "dubboTestList": [
+ {
+ "name": "22222",
+ "id": "122"
+ }
+ ],
+ "id":"123344",
+ "name":"testete"
+}
+
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-alibaba-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/alibaba/dubbo/consumer/api/ShenyuAlibabaDubboClientApi.java
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-alibaba-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/alibaba/dubbo/consumer/api/ShenyuAlibabaDubboClientApi.java
index fad74d388..7e4f5cc25 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-alibaba-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/alibaba/dubbo/consumer/api/ShenyuAlibabaDubboClientApi.java
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-alibaba-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/alibaba/dubbo/consumer/api/ShenyuAlibabaDubboClientApi.java
@@ -17,9 +17,17 @@
package org.apache.shenyu.examples.sdk.alibaba.dubbo.consumer.api;
+import java.util.List;
+import org.apache.shenyu.examples.dubbo.api.entity.ComplexBeanTest;
import org.apache.shenyu.examples.dubbo.api.entity.DubboTest;
+import org.apache.shenyu.examples.dubbo.api.entity.ListResp;
+import
org.apache.shenyu.examples.sdk.alibaba.dubbo.consumer.dto.DubboRequestBody;
+import
org.apache.shenyu.examples.sdk.alibaba.dubbo.consumer.dto.DubboTestSaveRequest;
import org.apache.shenyu.sdk.spring.ShenyuClient;
import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestParam;
/**
* ShenyuApacheDubboClientApi.
@@ -35,4 +43,75 @@ public interface ShenyuAlibabaDubboClientApi {
@GetMapping("/dubbo/findAll")
DubboTest findAll();
+ /**
+ * findList.
+ * @return ListResp
+ */
+ @GetMapping("/dubbo/findList")
+ ListResp findList();
+
+ /**
+ * findById.
+ * @param id id
+ * @return DubboTest
+ */
+ @GetMapping("/dubbo/findById")
+ DubboTest findById(@RequestParam("id") String id);
+
+ /**
+ * insert.
+ * @param dubboTest dubboTest
+ * @return DubboTest
+ */
+ @PostMapping("/dubbo/insert")
+ DubboTest insert(@RequestBody DubboTest dubboTest);
+
+ /**
+ * findByListId.
+ * @param ids ids
+ * @return DubboTest
+ */
+ @PostMapping("/dubbo/findByListId")
+ DubboTest findByListId(@RequestBody List<String> ids);
+
+ /**
+ * findByIdsAndName.
+ * @param dubboRequestBody dubboRequestBody
+ * @return DubboTest
+ */
+ @PostMapping("/dubbo/demo/findByIdsAndName")
+ DubboTest findByIdsAndName(@RequestBody DubboRequestBody dubboRequestBody);
+
+ /**
+ * findByArrayIdsAndName.
+ * @param dubboRequestBody dubboRequestBody
+ * @return DubboTest
+ */
+ @PostMapping("/dubbo/demo/findByIdsAndName")
+ DubboTest findByArrayIdsAndName(@RequestBody DubboRequestBody
dubboRequestBody);
+
+ /**
+ * saveComplexBeanTest.
+ * @param complexBeanTest complexBeanTest
+ * @return DubboTest
+ */
+ @PostMapping("/dubbo/saveComplexBeanTest")
+ DubboTest saveComplexBeanTest(@RequestBody ComplexBeanTest
complexBeanTest);
+
+ /**
+ * batchSave.
+ * @param dubboTestSaveRequest dubboTestSaveRequest
+ * @return DubboTest
+ */
+ @PostMapping("/dubbo/batchSave")
+ DubboTest batchSave(@RequestBody DubboTestSaveRequest
dubboTestSaveRequest);
+
+ /**
+ * batchSaveAndNameAndId.
+ * @param dubboTestSaveRequest dubboTestSaveRequest
+ * @return DubboTest
+ */
+ @PostMapping("/dubbo/batchSaveAndNameAndId")
+ DubboTest batchSaveAndNameAndId(@RequestBody DubboTestSaveRequest
dubboTestSaveRequest);
+
}
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-alibaba-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/alibaba/dubbo/consumer/controller/ShenyuAlibabaDubboSdkExampleController.java
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-alibaba-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/alibaba/dubbo/consumer/controller/ShenyuAlibabaDubboSdkExampleController.java
index 25bff3989..81feb6da0 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-alibaba-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/alibaba/dubbo/consumer/controller/ShenyuAlibabaDubboSdkExampleController.java
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-alibaba-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/alibaba/dubbo/consumer/controller/ShenyuAlibabaDubboSdkExampleController.java
@@ -17,10 +17,18 @@
package org.apache.shenyu.examples.sdk.alibaba.dubbo.consumer.controller;
+import java.util.List;
+import org.apache.shenyu.examples.dubbo.api.entity.ComplexBeanTest;
import org.apache.shenyu.examples.dubbo.api.entity.DubboTest;
+import org.apache.shenyu.examples.dubbo.api.entity.ListResp;
import
org.apache.shenyu.examples.sdk.alibaba.dubbo.consumer.api.ShenyuAlibabaDubboClientApi;
+import
org.apache.shenyu.examples.sdk.alibaba.dubbo.consumer.dto.DubboRequestBody;
+import
org.apache.shenyu.examples.sdk.alibaba.dubbo.consumer.dto.DubboTestSaveRequest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
/**
@@ -42,4 +50,92 @@ public class ShenyuAlibabaDubboSdkExampleController {
return shenyuApacheDubboClientApi.findAll();
}
+ /**
+ * findList.
+ * @return ListResp
+ */
+ @GetMapping("/sdk/dubbo/findList")
+ public ListResp findList() {
+ return shenyuApacheDubboClientApi.findList();
+ }
+
+ /**
+ * findById.
+ * @param id id
+ * @return DubboTest
+ */
+ @GetMapping("/sdk/dubbo/findById")
+ public DubboTest findById(final @RequestParam("id") String id) {
+ return shenyuApacheDubboClientApi.findById(id);
+ }
+
+ /**
+ * findByListId.
+ * @param ids ids
+ * @return DubboTest
+ */
+ @PostMapping("/sdk/dubbo/findByListId")
+ public DubboTest findByListId(final @RequestBody List<String> ids) {
+ return shenyuApacheDubboClientApi.findByListId(ids);
+ }
+
+ /**
+ * insert.
+ * @param dubboTest dubboTest
+ * @return DubboTest
+ */
+ @PostMapping("/sdk/dubbo/insert")
+ public DubboTest insert(final @RequestBody DubboTest dubboTest) {
+ return shenyuApacheDubboClientApi.insert(dubboTest);
+ }
+
+ /**
+ * findByIdsAndName.
+ * @param dubboRequestBody dubboRequestBody
+ * @return DubboTest
+ */
+ @PostMapping("/sdk/dubbo/demo/findByIdsAndName")
+ public DubboTest findByIdsAndName(final @RequestBody DubboRequestBody
dubboRequestBody) {
+ return shenyuApacheDubboClientApi.findByIdsAndName(dubboRequestBody);
+ }
+
+ /**
+ * findByArrayIdsAndName.
+ * @param dubboRequestBody dubboRequestBody
+ * @return DubboTest
+ */
+ @PostMapping("/sdk/dubbo/findByArrayIdsAndName")
+ public DubboTest findByArrayIdsAndName(final @RequestBody DubboRequestBody
dubboRequestBody) {
+ return
shenyuApacheDubboClientApi.findByArrayIdsAndName(dubboRequestBody);
+ }
+
+ /**
+ * saveComplexBeanTest.
+ * @param complexBeanTest complexBeanTest
+ * @return DubboTest
+ */
+ @PostMapping("/sdk/dubbo/saveComplexBeanTest")
+ public DubboTest saveComplexBeanTest(final @RequestBody ComplexBeanTest
complexBeanTest) {
+ return shenyuApacheDubboClientApi.saveComplexBeanTest(complexBeanTest);
+ }
+
+ /**
+ * batchSave.
+ * @param dubboTestSaveRequest dubboTestSaveRequest
+ * @return DubboTest
+ */
+ @PostMapping("/sdk/dubbo/batchSave")
+ public DubboTest batchSave(final @RequestBody DubboTestSaveRequest
dubboTestSaveRequest) {
+ return shenyuApacheDubboClientApi.batchSave(dubboTestSaveRequest);
+ }
+
+ /**
+ * batchSaveAndNameAndId.
+ * @param dubboTestSaveRequest dubboTestSaveRequest
+ * @return DubboTest
+ */
+ @PostMapping("/sdk/dubbo/batchSaveAndNameAndId")
+ public DubboTest batchSaveAndNameAndId(final @RequestBody
DubboTestSaveRequest dubboTestSaveRequest) {
+ return
shenyuApacheDubboClientApi.batchSaveAndNameAndId(dubboTestSaveRequest);
+ }
}
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/api/ShenyuApacheDubboClientApi.java
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-alibaba-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/alibaba/dubbo/consumer/dto/DubboRequestBody.java
similarity index 53%
copy from
shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/api/ShenyuApacheDubboClientApi.java
copy to
shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-alibaba-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/alibaba/dubbo/consumer/dto/DubboRequestBody.java
index e72de45b4..b09ec13ef 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/api/ShenyuApacheDubboClientApi.java
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-alibaba-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/alibaba/dubbo/consumer/dto/DubboRequestBody.java
@@ -15,24 +15,56 @@
* limitations under the License.
*/
-package org.apache.shenyu.examples.sdk.apache.dubbo.consumer.api;
+package org.apache.shenyu.examples.sdk.alibaba.dubbo.consumer.dto;
-import org.apache.shenyu.examples.dubbo.api.entity.DubboTest;
-import org.apache.shenyu.sdk.spring.ShenyuClient;
-import org.springframework.web.bind.annotation.GetMapping;
+import java.util.List;
/**
- * ShenyuApacheDubboClientApi.
+ * DubboRequestBody.
+ * @param <T> type
*/
-@ShenyuClient(contextId = "shenyu-gateway", name = "ShenyuSdkApiName")
-public interface ShenyuApacheDubboClientApi {
+public class DubboRequestBody<T> {
/**
- * findAll.
- * test Get.
- * @return SdkTestDto
+ * ids.
*/
- @GetMapping("/dubbo/findAll")
- DubboTest findAll();
+ private List<T> ids;
+ /**
+ * name.
+ */
+
+ private String name;
+
+ /**
+ * getIds.
+ * @return list
+ */
+ public List<T> getIds() {
+ return ids;
+ }
+
+ /**
+ * setIds.
+ * @param ids ids
+ */
+ public void setIds(final List<T> ids) {
+ this.ids = ids;
+ }
+
+ /**
+ * getName.
+ * @return name
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * setName.
+ * @param name name
+ */
+ public void setName(final String name) {
+ this.name = name;
+ }
}
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-alibaba-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/alibaba/dubbo/consumer/dto/DubboTestSaveRequest.java
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-alibaba-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/alibaba/dubbo/consumer/dto/DubboTestSaveRequest.java
new file mode 100644
index 000000000..42bd6ec4c
--- /dev/null
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-alibaba-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/alibaba/dubbo/consumer/dto/DubboTestSaveRequest.java
@@ -0,0 +1,90 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * 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.apache.shenyu.examples.sdk.alibaba.dubbo.consumer.dto;
+
+import java.util.List;
+import org.apache.shenyu.examples.dubbo.api.entity.DubboTest;
+
+/**
+ * DubboTestSaveRequest.
+ */
+public class DubboTestSaveRequest {
+
+ /**
+ * dubboTestList.
+ */
+ private List<DubboTest> dubboTestList;
+
+ /**
+ * id.
+ */
+ private String id;
+
+ /**
+ * name.
+ */
+ private String name;
+
+ /**
+ * getId.
+ * @return id
+ */
+ public String getId() {
+ return id;
+ }
+
+ /**
+ * setId.
+ * @param id id
+ */
+ public void setId(final String id) {
+ this.id = id;
+ }
+
+ /**
+ * getName.
+ * @return name
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * setName.
+ * @param name name
+ */
+ public void setName(final String name) {
+ this.name = name;
+ }
+
+ /**
+ * getDubboTestList.
+ * @return list
+ */
+ public List<DubboTest> getDubboTestList() {
+ return dubboTestList;
+ }
+
+ /**
+ * setDubboTestList.
+ * @param dubboTestList dubboTestList
+ */
+ public void setDubboTestList(final List<DubboTest> dubboTestList) {
+ this.dubboTestList = dubboTestList;
+ }
+}
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/http/sdk-apache-dubbo-test-api.http
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/http/sdk-apache-dubbo-test-api.http
index 6c328bc98..013905c52 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/http/sdk-apache-dubbo-test-api.http
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/http/sdk-apache-dubbo-test-api.http
@@ -21,4 +21,92 @@ GET http://localhost:8899/sdk/dubbo/findAll
Accept: application/json
Content-Type: application/json
+### shengyu apache dubbo /sdk/dubbo/findList
+GET http://localhost:8899/sdk/dubbo/findList
+Accept: application/json
+Content-Type: application/json
+### shengyu apache dubbo /sdk/dubbo/findById
+GET http://localhost:8899/sdk/dubbo/findById?id=1
+Accept: application/json
+Content-Type: application/json
+
+### shengyu apache dubbo /sdk/dubbo/findByListId
+POST http://localhost:8899/sdk/dubbo/findByListId
+Accept: application/json
+Content-Type: application/json
+{
+ "ids":["1","2"]
+}
+
+### shengyu apache dubbo /sdk/dubbo/insert
+POST http://localhost:8899/sdk/dubbo/insert
+Accept: application/json
+Content-Type: application/json
+{
+ "id":1L,
+ "name":"helloworld"
+}
+
+### shengyu apache dubbo /sdk/dubbo/findByIdsAndName
+POST http://localhost:8899/sdk/dubbo/findByIdsAndName
+Accept: application/json
+Content-Type: application/json
+{
+ "ids":["1","2"],
+ "name":"333"
+}
+
+### shengyu apache dubbo /sdk/dubbo/findByArrayIdsAndName
+POST http://localhost:8899/sdk/dubbo/findByArrayIdsAndName
+Accept: application/json
+Content-Type: application/json
+{
+ "ids":[1,12],
+ "name":"999"
+}
+
+### shengyu apache dubbo /sdk/dubbo/saveComplexBeanTest
+POST http://localhost:8899/sdk/dubbo/saveComplexBeanTest
+Accept: application/json
+Content-Type: application/json
+{
+ "dubboTest":{
+ "id": "123",
+ "name": "test1"
+ },
+ "idLists": [
+ "1",
+ "2"
+ ],
+ "idMaps": {
+ }
+}
+
+### shengyu apache dubbo /sdk/dubbo/batchSave
+POST http://localhost:8899/sdk/dubbo/batchSave
+Accept: application/json
+Content-Type: application/json
+{
+ "dubboTestList": [
+ {
+ "name": "22222",
+ "id": "122"
+ }
+ ]
+}
+
+### shengyu apache dubbo /sdk/dubbo/batchSaveAndNameAndId
+POST http://localhost:8899/sdk/dubbo/batchSaveAndNameAndId
+Accept: application/json
+Content-Type: application/json
+{
+ "dubboTestList": [
+ {
+ "name": "22222",
+ "id": "122"
+ }
+ ],
+ "id":"123344",
+ "name":"testete"
+}
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/api/ShenyuApacheDubboClientApi.java
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/api/ShenyuApacheDubboClientApi.java
index e72de45b4..9900186fd 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/api/ShenyuApacheDubboClientApi.java
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/api/ShenyuApacheDubboClientApi.java
@@ -17,9 +17,17 @@
package org.apache.shenyu.examples.sdk.apache.dubbo.consumer.api;
+import java.util.List;
+import org.apache.shenyu.examples.dubbo.api.entity.ComplexBeanTest;
import org.apache.shenyu.examples.dubbo.api.entity.DubboTest;
+import org.apache.shenyu.examples.dubbo.api.entity.ListResp;
+import
org.apache.shenyu.examples.sdk.apache.dubbo.consumer.dto.DubboRequestBody;
+import
org.apache.shenyu.examples.sdk.apache.dubbo.consumer.dto.DubboTestSaveRequest;
import org.apache.shenyu.sdk.spring.ShenyuClient;
import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestParam;
/**
* ShenyuApacheDubboClientApi.
@@ -30,9 +38,79 @@ public interface ShenyuApacheDubboClientApi {
/**
* findAll.
* test Get.
- * @return SdkTestDto
+ * @return DubboTest
*/
@GetMapping("/dubbo/findAll")
DubboTest findAll();
+ /**
+ * findList.
+ * @return ListResp
+ */
+ @GetMapping("/dubbo/findList")
+ ListResp findList();
+
+ /**
+ * findById.
+ * @param id id
+ * @return DubboTest
+ */
+ @GetMapping("/dubbo/findById")
+ DubboTest findById(@RequestParam("id") String id);
+
+ /**
+ * insert.
+ * @param dubboTest dubboTest
+ * @return DubboTest
+ */
+ @PostMapping("/dubbo/insert")
+ DubboTest insert(@RequestBody DubboTest dubboTest);
+
+ /**
+ * findByListId.
+ * @param ids ids
+ * @return DubboTest
+ */
+ @PostMapping("/dubbo/findByListId")
+ DubboTest findByListId(@RequestBody List<String> ids);
+
+ /**
+ * findByIdsAndName.
+ * @param dubboRequestBody dubboRequestBody
+ * @return DubboTest
+ */
+ @PostMapping("/dubbo/demo/findByIdsAndName")
+ DubboTest findByIdsAndName(@RequestBody DubboRequestBody dubboRequestBody);
+
+ /**
+ * findByArrayIdsAndName.
+ * @param dubboRequestBody dubboRequestBody
+ * @return DubboTest
+ */
+ @PostMapping("/dubbo/demo/findByIdsAndName")
+ DubboTest findByArrayIdsAndName(@RequestBody DubboRequestBody
dubboRequestBody);
+
+ /**
+ * saveComplexBeanTest.
+ * @param complexBeanTest complexBeanTest
+ * @return DubboTest
+ */
+ @PostMapping("/dubbo/saveComplexBeanTest")
+ DubboTest saveComplexBeanTest(@RequestBody ComplexBeanTest
complexBeanTest);
+
+ /**
+ * batchSave.
+ * @param dubboTestSaveRequest dubboTestSaveRequest
+ * @return DubboTest
+ */
+ @PostMapping("/dubbo/batchSave")
+ DubboTest batchSave(@RequestBody DubboTestSaveRequest
dubboTestSaveRequest);
+
+ /**
+ * batchSaveAndNameAndId.
+ * @param dubboTestSaveRequest dubboTestSaveRequest
+ * @return DubboTest
+ */
+ @PostMapping("/dubbo/batchSaveAndNameAndId")
+ DubboTest batchSaveAndNameAndId(@RequestBody DubboTestSaveRequest
dubboTestSaveRequest);
}
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/controller/ShenyuApacheDubboSdkExampleController.java
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/controller/ShenyuApacheDubboSdkExampleController.java
index d0e5450d8..7392f1835 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/controller/ShenyuApacheDubboSdkExampleController.java
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/controller/ShenyuApacheDubboSdkExampleController.java
@@ -17,10 +17,18 @@
package org.apache.shenyu.examples.sdk.apache.dubbo.consumer.controller;
+import java.util.List;
+import org.apache.shenyu.examples.dubbo.api.entity.ComplexBeanTest;
import org.apache.shenyu.examples.dubbo.api.entity.DubboTest;
+import org.apache.shenyu.examples.dubbo.api.entity.ListResp;
import
org.apache.shenyu.examples.sdk.apache.dubbo.consumer.api.ShenyuApacheDubboClientApi;
+import
org.apache.shenyu.examples.sdk.apache.dubbo.consumer.dto.DubboRequestBody;
+import
org.apache.shenyu.examples.sdk.apache.dubbo.consumer.dto.DubboTestSaveRequest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
/**
@@ -35,11 +43,100 @@ public class ShenyuApacheDubboSdkExampleController {
/**
* findAll.
- * @return SdkTestDto
+ * @return DubboTest
*/
@GetMapping("/sdk/dubbo/findAll")
public DubboTest findAll() {
return shenyuApacheDubboClientApi.findAll();
}
+ /**
+ * findList.
+ * @return ListResp
+ */
+ @GetMapping("/sdk/dubbo/findList")
+ public ListResp findList() {
+ return shenyuApacheDubboClientApi.findList();
+ }
+
+ /**
+ * findById.
+ * @param id id
+ * @return DubboTest
+ */
+ @GetMapping("/sdk/dubbo/findById")
+ public DubboTest findById(final @RequestParam("id") String id) {
+ return shenyuApacheDubboClientApi.findById(id);
+ }
+
+ /**
+ * findByListId.
+ * @param ids ids
+ * @return DubboTest
+ */
+ @PostMapping("/sdk/dubbo/findByListId")
+ public DubboTest findByListId(final @RequestBody List<String> ids) {
+ return shenyuApacheDubboClientApi.findByListId(ids);
+ }
+
+ /**
+ * insert.
+ * @param dubboTest dubboTest
+ * @return DubboTest
+ */
+ @PostMapping("/sdk/dubbo/insert")
+ public DubboTest insert(final @RequestBody DubboTest dubboTest) {
+ return shenyuApacheDubboClientApi.insert(dubboTest);
+ }
+
+ /**
+ * findByIdsAndName.
+ * @param dubboRequestBody dubboRequestBody
+ * @return DubboTest
+ */
+ @PostMapping("/sdk/dubbo/demo/findByIdsAndName")
+ public DubboTest findByIdsAndName(final @RequestBody DubboRequestBody
dubboRequestBody) {
+ return shenyuApacheDubboClientApi.findByIdsAndName(dubboRequestBody);
+ }
+
+ /**
+ * findByArrayIdsAndName.
+ * @param dubboRequestBody dubboRequestBody
+ * @return DubboTest
+ */
+ @PostMapping("/sdk/dubbo/findByArrayIdsAndName")
+ public DubboTest findByArrayIdsAndName(final @RequestBody DubboRequestBody
dubboRequestBody) {
+ return
shenyuApacheDubboClientApi.findByArrayIdsAndName(dubboRequestBody);
+ }
+
+ /**
+ * saveComplexBeanTest.
+ * @param complexBeanTest complexBeanTest
+ * @return DubboTest
+ */
+ @PostMapping("/sdk/dubbo/saveComplexBeanTest")
+ public DubboTest saveComplexBeanTest(final @RequestBody ComplexBeanTest
complexBeanTest) {
+ return shenyuApacheDubboClientApi.saveComplexBeanTest(complexBeanTest);
+ }
+
+ /**
+ * batchSave.
+ * @param dubboTestSaveRequest dubboTestSaveRequest
+ * @return DubboTest
+ */
+ @PostMapping("/sdk/dubbo/batchSave")
+ public DubboTest batchSave(final @RequestBody DubboTestSaveRequest
dubboTestSaveRequest) {
+ return shenyuApacheDubboClientApi.batchSave(dubboTestSaveRequest);
+ }
+
+ /**
+ * batchSaveAndNameAndId.
+ * @param dubboTestSaveRequest dubboTestSaveRequest
+ * @return DubboTest
+ */
+ @PostMapping("/sdk/dubbo/batchSaveAndNameAndId")
+ public DubboTest batchSaveAndNameAndId(final @RequestBody
DubboTestSaveRequest dubboTestSaveRequest) {
+ return
shenyuApacheDubboClientApi.batchSaveAndNameAndId(dubboTestSaveRequest);
+ }
+
}
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/api/ShenyuApacheDubboClientApi.java
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/dto/DubboRequestBody.java
similarity index 53%
copy from
shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/api/ShenyuApacheDubboClientApi.java
copy to
shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/dto/DubboRequestBody.java
index e72de45b4..0f2081e5d 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/api/ShenyuApacheDubboClientApi.java
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/dto/DubboRequestBody.java
@@ -15,24 +15,56 @@
* limitations under the License.
*/
-package org.apache.shenyu.examples.sdk.apache.dubbo.consumer.api;
+package org.apache.shenyu.examples.sdk.apache.dubbo.consumer.dto;
-import org.apache.shenyu.examples.dubbo.api.entity.DubboTest;
-import org.apache.shenyu.sdk.spring.ShenyuClient;
-import org.springframework.web.bind.annotation.GetMapping;
+import java.util.List;
/**
- * ShenyuApacheDubboClientApi.
+ * DubboRequestBody.
+ * @param <T> type
*/
-@ShenyuClient(contextId = "shenyu-gateway", name = "ShenyuSdkApiName")
-public interface ShenyuApacheDubboClientApi {
+public class DubboRequestBody<T> {
/**
- * findAll.
- * test Get.
- * @return SdkTestDto
+ * ids.
*/
- @GetMapping("/dubbo/findAll")
- DubboTest findAll();
+ private List<T> ids;
+ /**
+ * name.
+ */
+
+ private String name;
+
+ /**
+ * getIds.
+ * @return list
+ */
+ public List<T> getIds() {
+ return ids;
+ }
+
+ /**
+ * setIds.
+ * @param ids ids
+ */
+ public void setIds(final List<T> ids) {
+ this.ids = ids;
+ }
+
+ /**
+ * getName.
+ * @return name
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * setName.
+ * @param name name
+ */
+ public void setName(final String name) {
+ this.name = name;
+ }
}
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/dto/DubboTestSaveRequest.java
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/dto/DubboTestSaveRequest.java
new file mode 100644
index 000000000..ab1f7c2cb
--- /dev/null
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/dto/DubboTestSaveRequest.java
@@ -0,0 +1,90 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * 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.apache.shenyu.examples.sdk.apache.dubbo.consumer.dto;
+
+import java.util.List;
+import org.apache.shenyu.examples.dubbo.api.entity.DubboTest;
+
+/**
+ * DubboTestSaveRequest.
+ */
+public class DubboTestSaveRequest {
+
+ /**
+ * dubboTestList.
+ */
+ private List<DubboTest> dubboTestList;
+
+ /**
+ * id.
+ */
+ private String id;
+
+ /**
+ * name.
+ */
+ private String name;
+
+ /**
+ * getId.
+ * @return id
+ */
+ public String getId() {
+ return id;
+ }
+
+ /**
+ * setId.
+ * @param id id
+ */
+ public void setId(final String id) {
+ this.id = id;
+ }
+
+ /**
+ * getName.
+ * @return name
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * setName.
+ * @param name name
+ */
+ public void setName(final String name) {
+ this.name = name;
+ }
+
+ /**
+ * getDubboTestList.
+ * @return list
+ */
+ public List<DubboTest> getDubboTestList() {
+ return dubboTestList;
+ }
+
+ /**
+ * setDubboTestList.
+ * @param dubboTestList dubboTestList
+ */
+ public void setDubboTestList(final List<DubboTest> dubboTestList) {
+ this.dubboTestList = dubboTestList;
+ }
+}