This is an automated email from the ASF dual-hosted git repository.
zhangzicheng 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 efbaaa551 feature plugin-apache-dubbo: add `ShenyuService` and
`ShenyuDubboService` annotations for shenyu-client-apache-dubbo (#3838)
efbaaa551 is described below
commit efbaaa551cc1143fd2ef8cad462cd430c9b0f2d4
Author: mango <[email protected]>
AuthorDate: Fri Aug 12 17:44:51 2022 +0800
feature plugin-apache-dubbo: add `ShenyuService` and `ShenyuDubboService`
annotations for shenyu-client-apache-dubbo (#3838)
Signed-off-by: mango <[email protected]>
---
.../alibaba/dubbo/annotation/ShenyuService.java | 2 +-
.../dubbo/annotation/ShenyuDubboService.java} | 211 +++++++++++----------
.../apache}/dubbo/annotation/ShenyuService.java | 27 +--
.../impl/DubboClassMultiParamServiceImpl.java | 5 +-
.../annotation/impl/DubboClassTestServiceImpl.java | 6 +-
5 files changed, 129 insertions(+), 122 deletions(-)
diff --git
a/shenyu-client/shenyu-client-dubbo/shenyu-client-alibaba-dubbo/src/main/java/org/apache/shenyu/client/alibaba/dubbo/annotation/ShenyuService.java
b/shenyu-client/shenyu-client-dubbo/shenyu-client-alibaba-dubbo/src/main/java/org/apache/shenyu/client/alibaba/dubbo/annotation/ShenyuService.java
index 5d981b59a..89dd9ef87 100644
---
a/shenyu-client/shenyu-client-dubbo/shenyu-client-alibaba-dubbo/src/main/java/org/apache/shenyu/client/alibaba/dubbo/annotation/ShenyuService.java
+++
b/shenyu-client/shenyu-client-dubbo/shenyu-client-alibaba-dubbo/src/main/java/org/apache/shenyu/client/alibaba/dubbo/annotation/ShenyuService.java
@@ -33,7 +33,7 @@ import java.lang.annotation.Target;
* The interface shenyu service.
*/
@Retention(RetentionPolicy.RUNTIME)
-@Target({ElementType.TYPE, ElementType.METHOD})
+@Target(ElementType.TYPE)
@Service
@Inherited
@ShenyuDubboClient
diff --git
a/shenyu-client/shenyu-client-dubbo/shenyu-client-alibaba-dubbo/src/main/java/org/apache/shenyu/client/alibaba/dubbo/annotation/ShenyuService.java
b/shenyu-client/shenyu-client-dubbo/shenyu-client-apache-dubbo/src/main/java/org/apache/shenyu/client/apache/dubbo/annotation/ShenyuDubboService.java
similarity index 52%
copy from
shenyu-client/shenyu-client-dubbo/shenyu-client-alibaba-dubbo/src/main/java/org/apache/shenyu/client/alibaba/dubbo/annotation/ShenyuService.java
copy to
shenyu-client/shenyu-client-dubbo/shenyu-client-apache-dubbo/src/main/java/org/apache/shenyu/client/apache/dubbo/annotation/ShenyuDubboService.java
index 5d981b59a..6d2fc2165 100644
---
a/shenyu-client/shenyu-client-dubbo/shenyu-client-alibaba-dubbo/src/main/java/org/apache/shenyu/client/alibaba/dubbo/annotation/ShenyuService.java
+++
b/shenyu-client/shenyu-client-dubbo/shenyu-client-apache-dubbo/src/main/java/org/apache/shenyu/client/apache/dubbo/annotation/ShenyuDubboService.java
@@ -15,10 +15,12 @@
* limitations under the License.
*/
-package org.apache.shenyu.client.alibaba.dubbo.annotation;
+package org.apache.shenyu.client.apache.dubbo.annotation;
-import com.alibaba.dubbo.config.annotation.Method;
-import com.alibaba.dubbo.config.annotation.Service;
+import org.apache.dubbo.common.constants.ClusterRules;
+import org.apache.dubbo.common.constants.LoadbalanceRules;
+import org.apache.dubbo.config.annotation.Method;
+import org.apache.dubbo.config.annotation.DubboService;
import org.apache.shenyu.client.dubbo.common.annotation.ShenyuDubboClient;
import org.springframework.core.annotation.AliasFor;
@@ -28,16 +30,19 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
+import static
org.apache.dubbo.common.constants.CommonConstants.DEFAULT_CALLBACK_INSTANCES;
+import static
org.apache.dubbo.common.constants.CommonConstants.DEFAULT_RETRIES;
+
/**
* The interface shenyu service.
*/
@Retention(RetentionPolicy.RUNTIME)
-@Target({ElementType.TYPE, ElementType.METHOD})
-@Service
+@Target(ElementType.TYPE)
+@DubboService
@Inherited
@ShenyuDubboClient
-public @interface ShenyuService {
+public @interface ShenyuDubboService {
/**
* Alias for {@link ShenyuDubboClient#value()} .
@@ -80,362 +85,362 @@ public @interface ShenyuService {
boolean enabled() default true;
/**
- * Alias for {@link Service#interfaceClass()}.
+ * Alias for {@link DubboService#interfaceClass()}.
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
Class<?> interfaceClass() default void.class;
/**
- * Alias for {@link Service#interfaceName()} .
+ * Alias for {@link DubboService#interfaceName()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String interfaceName() default "";
/**
- * Alias for {@link Service#version()} .
+ * Alias for {@link DubboService#version()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String version() default "";
/**
- * Alias for {@link Service#group()} .
+ * Alias for {@link DubboService#group()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String group() default "";
/**
- * Alias for {@link Service#path()}.
+ * Alias for {@link DubboService#path()}.
*
* @return the string
*/
- @AliasFor(annotation = Service.class, attribute = "path")
+ @AliasFor(annotation = DubboService.class, attribute = "path")
String dubboPath() default "";
/**
- * Alias for {@link Service#export()} .
+ * Alias for {@link DubboService#export()} .
*
* @return the boolean
*/
- @AliasFor(annotation = Service.class)
- boolean export() default false;
+ @AliasFor(annotation = DubboService.class)
+ boolean export() default true;
/**
- * Alias for {@link Service#token()} .
+ * Alias for {@link DubboService#token()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String token() default "";
/**
- * Alias for {@link Service#deprecated()} .
+ * Alias for {@link DubboService#deprecated()} .
*
* @return the boolean
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
boolean deprecated() default false;
/**
- * Alias for {@link Service#dynamic()} .
+ * Alias for {@link DubboService#dynamic()} .
*
* @return the boolean
*/
- @AliasFor(annotation = Service.class)
- boolean dynamic() default false;
+ @AliasFor(annotation = DubboService.class)
+ boolean dynamic() default true;
/**
- * Alias for {@link Service#accesslog()} .
+ * Alias for {@link DubboService#accesslog()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String accesslog() default "";
/**
- * Alias for {@link Service#executes()} .
+ * Alias for {@link DubboService#executes()} .
*
* @return the int
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
int executes() default 0;
/**
- * Alias for {@link Service#register()} .
+ * Alias for {@link DubboService#register()} .
*
* @return the boolean
*/
- @AliasFor(annotation = Service.class)
- boolean register() default false;
+ @AliasFor(annotation = DubboService.class)
+ boolean register() default true;
/**
- * Alias for {@link Service#weight()} .
+ * Alias for {@link DubboService#weight()} .
*
* @return the int
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
int weight() default 0;
/**
- * Alias for {@link Service#document()} .
+ * Alias for {@link DubboService#document()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String document() default "";
/**
- * Alias for {@link Service#delay()} .
+ * Alias for {@link DubboService#delay()} .
*
* @return the int
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
int delay() default 0;
/**
- * Alias for {@link Service#local()} .
+ * Alias for {@link DubboService#local()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String local() default "";
/**
- * Alias for {@link Service#stub()} .
+ * Alias for {@link DubboService#stub()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String stub() default "";
/**
- * Alias for {@link Service#cluster()} .
+ * Alias for {@link DubboService#cluster()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
- String cluster() default "";
+ @AliasFor(annotation = DubboService.class)
+ String cluster() default ClusterRules.EMPTY;
/**
- * Alias for {@link Service#proxy()} .
+ * Alias for {@link DubboService#proxy()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String proxy() default "";
/**
- * Alias for {@link Service#connections()} .
+ * Alias for {@link DubboService#connections()} .
*
* @return the int
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
int connections() default 0;
/**
- * Alias for {@link Service#callbacks()} .
+ * Alias for {@link DubboService#callbacks()} .
*
* @return the int
*/
- @AliasFor(annotation = Service.class)
- int callbacks() default 0;
+ @AliasFor(annotation = DubboService.class)
+ int callbacks() default DEFAULT_CALLBACK_INSTANCES;
/**
- * Alias for {@link Service#onconnect()} .
+ * Alias for {@link DubboService#onconnect()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String onconnect() default "";
/**
- * Alias for {@link Service#ondisconnect()} .
+ * Alias for {@link DubboService#ondisconnect()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String ondisconnect() default "";
/**
- * Alias for {@link Service#owner()} .
+ * Alias for {@link DubboService#owner()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String owner() default "";
/**
- * Alias for {@link Service#layer()} .
+ * Alias for {@link DubboService#layer()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String layer() default "";
/**
- *Alias for {@link Service#retries()} .
+ *Alias for {@link DubboService#retries()} .
*
* @return the int
*/
- @AliasFor(annotation = Service.class)
- int retries() default 0;
+ @AliasFor(annotation = DubboService.class)
+ int retries() default DEFAULT_RETRIES;
/**
- * Alias for {@link Service#loadbalance()} .
+ * Alias for {@link DubboService#loadbalance()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
- String loadbalance() default "";
+ @AliasFor(annotation = DubboService.class)
+ String loadbalance() default LoadbalanceRules.RANDOM;
/**
- * Alias for {@link Service#async()} .
+ * Alias for {@link DubboService#async()} .
*
* @return the boolean
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
boolean async() default false;
/**
- * Alias for {@link Service#actives()} .
+ * Alias for {@link DubboService#actives()} .
*
* @return the int
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
int actives() default 0;
/**
- * Alias for {@link Service#sent()} .
+ * Alias for {@link DubboService#sent()} .
*
* @return the boolean
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
boolean sent() default false;
/**
- * Alias for {@link Service#mock()} .
+ * Alias for {@link DubboService#mock()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String mock() default "";
/**
- * Alias for {@link Service#validation()} .
+ * Alias for {@link DubboService#validation()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String validation() default "";
/**
- * Alias for {@link Service#timeout()} .
+ * Alias for {@link DubboService#timeout()} .
*
* @return the int
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
int timeout() default 0;
/**
- * Alias for {@link Service#cache()} .
+ * Alias for {@link DubboService#cache()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String cache() default "";
/**
- * Alias for {@link Service#filter()} .
+ * Alias for {@link DubboService#filter()} .
*
* @return the string[]
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String[] filter() default {};
/**
- * Alias for {@link Service#listener()} .
+ * Alias for {@link DubboService#listener()} .
*
* @return the string[]
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String[] listener() default {};
/**
- * Alias for {@link Service#parameters()} .
+ * Alias for {@link DubboService#parameters()} .
*
* @return the string[]
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String[] parameters() default {};
/**
- * Alias for {@link Service#application()} .
+ * Alias for {@link DubboService#application()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String application() default "";
/**
- * Alias for {@link Service#module()} .
+ * Alias for {@link DubboService#module()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String module() default "";
/**
- * Alias for {@link Service#provider()} .
+ * Alias for {@link DubboService#provider()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String provider() default "";
/**
- * Alias for {@link Service#protocol()} .
+ * Alias for {@link DubboService#protocol()} .
*
* @return the string[]
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String[] protocol() default {};
/**
- * Alias for {@link Service#monitor()} .
+ * Alias for {@link DubboService#monitor()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String monitor() default "";
/**
- * Alias for {@link Service#registry()} .
+ * Alias for {@link DubboService#registry()} .
*
* @return the string[]
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String[] registry() default {};
/**
- * Alias for {@link Service#tag()} .
+ * Alias for {@link DubboService#tag()} .
*
* @return the string
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
String tag() default "";
/**
- * Alias for {@link Service#methods()} .
+ * Alias for {@link DubboService#methods()} .
*
* @return the Method[]
*/
- @AliasFor(annotation = Service.class)
+ @AliasFor(annotation = DubboService.class)
Method[] methods() default {};
}
diff --git
a/shenyu-client/shenyu-client-dubbo/shenyu-client-alibaba-dubbo/src/main/java/org/apache/shenyu/client/alibaba/dubbo/annotation/ShenyuService.java
b/shenyu-client/shenyu-client-dubbo/shenyu-client-apache-dubbo/src/main/java/org/apache/shenyu/client/apache/dubbo/annotation/ShenyuService.java
similarity index 92%
copy from
shenyu-client/shenyu-client-dubbo/shenyu-client-alibaba-dubbo/src/main/java/org/apache/shenyu/client/alibaba/dubbo/annotation/ShenyuService.java
copy to
shenyu-client/shenyu-client-dubbo/shenyu-client-apache-dubbo/src/main/java/org/apache/shenyu/client/apache/dubbo/annotation/ShenyuService.java
index 5d981b59a..2bd537c55 100644
---
a/shenyu-client/shenyu-client-dubbo/shenyu-client-alibaba-dubbo/src/main/java/org/apache/shenyu/client/alibaba/dubbo/annotation/ShenyuService.java
+++
b/shenyu-client/shenyu-client-dubbo/shenyu-client-apache-dubbo/src/main/java/org/apache/shenyu/client/apache/dubbo/annotation/ShenyuService.java
@@ -15,10 +15,12 @@
* limitations under the License.
*/
-package org.apache.shenyu.client.alibaba.dubbo.annotation;
+package org.apache.shenyu.client.apache.dubbo.annotation;
-import com.alibaba.dubbo.config.annotation.Method;
-import com.alibaba.dubbo.config.annotation.Service;
+import org.apache.dubbo.common.constants.ClusterRules;
+import org.apache.dubbo.common.constants.LoadbalanceRules;
+import org.apache.dubbo.config.annotation.Method;
+import org.apache.dubbo.config.annotation.Service;
import org.apache.shenyu.client.dubbo.common.annotation.ShenyuDubboClient;
import org.springframework.core.annotation.AliasFor;
@@ -28,12 +30,15 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
+import static
org.apache.dubbo.common.constants.CommonConstants.DEFAULT_CALLBACK_INSTANCES;
+import static
org.apache.dubbo.common.constants.CommonConstants.DEFAULT_RETRIES;
+
/**
* The interface shenyu service.
*/
@Retention(RetentionPolicy.RUNTIME)
-@Target({ElementType.TYPE, ElementType.METHOD})
+@Target(ElementType.TYPE)
@Service
@Inherited
@ShenyuDubboClient
@@ -125,7 +130,7 @@ public @interface ShenyuService {
* @return the boolean
*/
@AliasFor(annotation = Service.class)
- boolean export() default false;
+ boolean export() default true;
/**
* Alias for {@link Service#token()} .
@@ -149,7 +154,7 @@ public @interface ShenyuService {
* @return the boolean
*/
@AliasFor(annotation = Service.class)
- boolean dynamic() default false;
+ boolean dynamic() default true;
/**
* Alias for {@link Service#accesslog()} .
@@ -173,7 +178,7 @@ public @interface ShenyuService {
* @return the boolean
*/
@AliasFor(annotation = Service.class)
- boolean register() default false;
+ boolean register() default true;
/**
* Alias for {@link Service#weight()} .
@@ -221,7 +226,7 @@ public @interface ShenyuService {
* @return the string
*/
@AliasFor(annotation = Service.class)
- String cluster() default "";
+ String cluster() default ClusterRules.EMPTY;
/**
* Alias for {@link Service#proxy()} .
@@ -245,7 +250,7 @@ public @interface ShenyuService {
* @return the int
*/
@AliasFor(annotation = Service.class)
- int callbacks() default 0;
+ int callbacks() default DEFAULT_CALLBACK_INSTANCES;
/**
* Alias for {@link Service#onconnect()} .
@@ -285,7 +290,7 @@ public @interface ShenyuService {
* @return the int
*/
@AliasFor(annotation = Service.class)
- int retries() default 0;
+ int retries() default DEFAULT_RETRIES;
/**
* Alias for {@link Service#loadbalance()} .
@@ -293,7 +298,7 @@ public @interface ShenyuService {
* @return the string
*/
@AliasFor(annotation = Service.class)
- String loadbalance() default "";
+ String loadbalance() default LoadbalanceRules.RANDOM;
/**
* Alias for {@link Service#async()} .
diff --git
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/annotation/impl/DubboClassMultiParamServiceImpl.java
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/annotation/impl/DubboClassMultiParamServiceImpl.java
index 7db97d807..87af706fa 100644
---
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/annotation/impl/DubboClassMultiParamServiceImpl.java
+++
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/annotation/impl/DubboClassMultiParamServiceImpl.java
@@ -17,7 +17,7 @@
package org.apache.shenyu.examples.apache.dubbo.service.annotation.impl;
-import org.apache.dubbo.config.annotation.DubboService;
+import org.apache.shenyu.client.apache.dubbo.annotation.ShenyuDubboService;
import org.apache.shenyu.client.dubbo.common.annotation.ShenyuDubboClient;
import org.apache.shenyu.examples.dubbo.api.entity.ComplexBeanTest;
import org.apache.shenyu.examples.dubbo.api.entity.DubboTest;
@@ -32,8 +32,7 @@ import java.util.stream.Collectors;
/**
* The type Dubbo multi param service.
*/
-@ShenyuDubboClient("/demo")
-@DubboService
+@ShenyuDubboService("/demo")
public class DubboClassMultiParamServiceImpl implements
DubboClassMultiParamService {
@Override
diff --git
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/annotation/impl/DubboClassTestServiceImpl.java
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/annotation/impl/DubboClassTestServiceImpl.java
index a9f6aa0c7..f4a7f1fa7 100644
---
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/annotation/impl/DubboClassTestServiceImpl.java
+++
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/annotation/impl/DubboClassTestServiceImpl.java
@@ -17,9 +17,8 @@
package org.apache.shenyu.examples.apache.dubbo.service.annotation.impl;
-import org.apache.dubbo.config.annotation.DubboService;
import org.apache.dubbo.rpc.RpcContext;
-import org.apache.shenyu.client.dubbo.common.annotation.ShenyuDubboClient;
+import org.apache.shenyu.client.apache.dubbo.annotation.ShenyuDubboService;
import org.apache.shenyu.common.utils.GsonUtils;
import org.apache.shenyu.examples.dubbo.api.entity.DubboTest;
import org.apache.shenyu.examples.dubbo.api.entity.ListResp;
@@ -33,8 +32,7 @@ import java.util.Random;
/**
* The type Dubbo service.
*/
-@ShenyuDubboClient("/demo/**")
-@DubboService
+@ShenyuDubboService("/demo/**")
public class DubboClassTestServiceImpl implements DubboClassTestService {
private static final Logger LOGGER =
LoggerFactory.getLogger(DubboClassTestServiceImpl.class);