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 223825bdf [ISSUE #3803] CheckStyle plugin add to 2 modules. (#3809)
223825bdf is described below

commit 223825bdfee27a3e347e0d1873b34f2ae56d08a9
Author: DamonXue(Fibonacci) <[email protected]>
AuthorDate: Fri Aug 12 11:22:39 2022 +0800

    [ISSUE #3803] CheckStyle plugin add to 2 modules. (#3809)
    
    * bug fix: spi does not match sql script config.
    
    * feature: CheckStyle plugin add to integrated-test module.
    
    * feature: CheckStyle plugin add to examples module.
    
    * according the checkstyle:check, change files in shenyu style.
    
    * check style the last merged files.
    
    * exclude the grpc resources.
    
    * when compile example exclude grpc.
    
    * integrated-test checkstyle location refactor.
    
    * example exclude rollback.
    
    * compiler compileSourceRoot add protobuf pathes.
    
    * dubbo source code that last merged checkstyle check.
    
    * compile source root add default path.
    
    * fix compile source root order bug.
    
    * replace project.build.directory to target desc.
    
    * replace target to project.basedir desc.
    
    * remove compile source roots to parent pom.
    
    * change compile source roots to includes.
    
    * rollback, local was success.
---
 shenyu-examples/pom.xml                            | 21 ++++++++++++
 .../common/aop/InterceptorConfiguration.java       |  5 +++
 .../shenyu/examples/common/aop/LogInterceptor.java | 13 +++++++-
 .../TestAlibabaDubboAnnotationApplication.java     | 23 +++++++-------
 .../annotation/impl/DubboClassTestServiceImpl.java | 29 +++++++----------
 .../impl/DubboMultiParamServiceImpl.java           | 23 +++++++-------
 .../annotation/impl/DubboTestServiceImpl.java      | 23 +++++++-------
 .../dubbo/service/TestAlibabaDubboApplication.java | 25 ++++++++-------
 .../service/impl/DubboClassTestServiceImpl.java    | 23 +++++++-------
 .../service/impl/DubboMultiParamServiceImpl.java   | 23 +++++++-------
 .../dubbo/service/impl/DubboTestServiceImpl.java   | 23 +++++++-------
 .../annotation/impl/DubboClassTestServiceImpl.java | 23 +++++++-------
 .../annotation/impl/DubboTestServiceImpl.java      | 23 +++++++-------
 .../service/xml/TestApacheDubboXmlApplication.java | 31 ++++++++++--------
 .../xml/impl/DubboClassTestServiceImpl.java        | 23 +++++++-------
 .../service/xml/impl/DubboTestServiceImpl.java     | 23 +++++++-------
 .../dubbo/service/impl/DubboTestServiceImpl.java   | 23 +++++++-------
 .../service/annotation/impl/TestServiceImpl.java   | 23 +++++++-------
 shenyu-examples/shenyu-examples-grpc/pom.xml       |  1 +
 .../examples/grpc/demo/EventServiceImpl.java       |  8 ++---
 .../examples/grpc/demo/HelloServiceImpl.java       | 11 ++++---
 .../examples/grpc/stream/StreamServiceImpl.java    |  2 +-
 .../examples/http/config/HttpServerConfig.java     | 13 ++++++--
 .../http/controller/HttpTestController.java        |  2 +-
 .../examples/http/controller/OrderController.java  |  7 +++-
 .../http/controller/RequestController.java         | 18 +++++++++++
 .../controller/ShenyuClientPathController.java     | 26 +++++++--------
 .../examples/http/controller/UploadController.java | 27 ++++++++--------
 .../examples/http/router/ShenyuTestHttpRouter.java | 16 ++++++----
 .../https/controller/UploadController.java         |  5 ++-
 .../motan/service/MotanClassDemoService.java       | 14 +++++++-
 .../examples/motan/service/MotanDemoService.java   | 14 +++++++-
 .../motan/service/TestMotanApplication.java        | 17 ++++++++++
 .../service/impl/MotanClassDemoServiceImpl.java    |  4 +--
 .../motan/service/impl/MotanDemoServiceImpl.java   |  6 ++--
 .../examples/plugin/ext/ExtendsShenyuPlugin.java   | 12 +++++--
 .../examples/plugin/ext/ExtendsShenyuZerBean.java  |  3 +-
 .../springcloud/controller/UploadController.java   |  4 +--
 .../springmvc/controller/OrderController.java      | 11 +++++--
 .../springmvc/controller/UploadController.java     | 12 +++----
 .../shenyu/examples/springmvc/dto/OAuth2DTO.java   |  4 +--
 .../shenyu/examples/springmvc/dto/UserDTO.java     |  7 ++--
 .../examples/springmvc/result/ResultBean.java      |  6 ++--
 .../springmvc/controller/HttpTestController.java   |  4 +--
 .../springmvc/controller/OrderController.java      | 13 +++++---
 .../springmvc/controller/UploadController.java     | 12 +++----
 .../shenyu/examples/springmvc/dto/OAuth2DTO.java   |  4 +--
 .../shenyu/examples/springmvc/dto/UserDTO.java     |  5 ++-
 .../examples/springmvc/result/ResultBean.java      |  6 ++--
 .../tars/servant/testapp/HelloServant.java         | 12 +++++++
 .../tars/servant/testapp/OrderServant.java         | 12 +++++++
 .../examples/tars/servant/testapp/UserServant.java | 14 +++++++-
 .../TestAnnotationWebsocketApplication.java        |  9 ++++--
 .../examples/websocket/config/WebSocketConfig.java |  6 +++-
 .../examples/websocket/service/SaveFile.java       |  8 ++++-
 ...UpLoadController.java => UploadController.java} | 28 ++++++++++++----
 .../examples/websocket/ws/WsServerEndpoint.java    | 23 ++++++--------
 .../websocket/TestNativeWebsocketApplication.java  |  6 +++-
 .../examples/websocket/config/WebSocketConfig.java |  5 +--
 .../websocket/config/WsSessionManager.java         | 36 ++++++++++-----------
 .../websocket/controller/TestHttpController.java   | 36 +++++++++++++++++----
 .../websocket/handler/HttpAuthHandler.java         | 24 +++++++-------
 .../interceptor/WebSocketInterceptor.java          | 37 ++++++++++++----------
 .../websocket/config/WebSocketConfiguration.java   |  8 +++--
 .../websocket/handler/UploadFileHandler.java       |  6 +++-
 shenyu-integrated-test/pom.xml                     | 21 ++++++++++++
 66 files changed, 623 insertions(+), 362 deletions(-)

diff --git a/shenyu-examples/pom.xml b/shenyu-examples/pom.xml
index 19e9af6b2..7625ccd36 100644
--- a/shenyu-examples/pom.xml
+++ b/shenyu-examples/pom.xml
@@ -37,6 +37,7 @@
         <maven-compiler-plugin.version>3.7.0</maven-compiler-plugin.version>
         <versions-maven-plugin.version>2.5</versions-maven-plugin.version>
         <docker-maven-plugin.version>0.40.1</docker-maven-plugin.version>
+        
<maven-checkstyle-plugin.version>3.1.0</maven-checkstyle-plugin.version>
     </properties>
 
     <modules>
@@ -72,6 +73,26 @@
                 <artifactId>versions-maven-plugin</artifactId>
                 <version>${versions-maven-plugin.version}</version>
             </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-checkstyle-plugin</artifactId>
+                <version>${maven-checkstyle-plugin.version}</version>
+                <configuration>
+                    
<configLocation>/../script/shenyu_checkstyle.xml</configLocation>
+                    
<headerLocation>/../script/checkstyle-header.txt</headerLocation>
+                    
<includeTestSourceDirectory>true</includeTestSourceDirectory>
+                    <excludes>**/transfer/**/*</excludes>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>validate</id>
+                        <phase>validate</phase>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
     </build>
 
diff --git 
a/shenyu-examples/shenyu-examples-common/src/main/java/org/apache/shenyu/examples/common/aop/InterceptorConfiguration.java
 
b/shenyu-examples/shenyu-examples-common/src/main/java/org/apache/shenyu/examples/common/aop/InterceptorConfiguration.java
index 22213b8cd..f721ef2eb 100644
--- 
a/shenyu-examples/shenyu-examples-common/src/main/java/org/apache/shenyu/examples/common/aop/InterceptorConfiguration.java
+++ 
b/shenyu-examples/shenyu-examples-common/src/main/java/org/apache/shenyu/examples/common/aop/InterceptorConfiguration.java
@@ -22,6 +22,11 @@ import org.springframework.context.annotation.Configuration;
 
 @Configuration
 public class InterceptorConfiguration {
+
+    /**
+     * define a bean with the name logInterceptor.
+     * @return logInterceptor
+     */
     @Bean
     public LogInterceptor logInterceptor() {
         return new LogInterceptor();
diff --git 
a/shenyu-examples/shenyu-examples-common/src/main/java/org/apache/shenyu/examples/common/aop/LogInterceptor.java
 
b/shenyu-examples/shenyu-examples-common/src/main/java/org/apache/shenyu/examples/common/aop/LogInterceptor.java
index ada2e33d6..a4500003c 100644
--- 
a/shenyu-examples/shenyu-examples-common/src/main/java/org/apache/shenyu/examples/common/aop/LogInterceptor.java
+++ 
b/shenyu-examples/shenyu-examples-common/src/main/java/org/apache/shenyu/examples/common/aop/LogInterceptor.java
@@ -29,18 +29,29 @@ public class LogInterceptor {
 
     private static final Logger log = 
LoggerFactory.getLogger(LogInterceptor.class);
 
+    /**
+     * log annotation pointcut.
+     */
     @Pointcut("@annotation(org.apache.shenyu.examples.common.aop.Log)")
     public void logPointcut() {
         //just for pointcut
     }
 
+    /**
+     * define log pointcut with around advice.
+     * @param point joinPoint
+     * @return the result of proceeding
+     */
     @Around("logPointcut()")
-    public Object around(ProceedingJoinPoint point) throws Throwable {
+    public Object around(final ProceedingJoinPoint point) {
         try {
             log.info("before");
             return point.proceed(point.getArgs());
+        } catch (Throwable throwable) {
+            log.error("log point cut throw exception:", throwable);
         } finally {
             log.info("after");
         }
+        return null;
     }
 }
diff --git 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/annotation/TestAlibabaDubboAnnotationApplication.java
 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/annotation/TestAlibabaDubboAnnotationApplication.java
index e1616d77f..16393ee4f 100644
--- 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/annotation/TestAlibabaDubboAnnotationApplication.java
+++ 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/annotation/TestAlibabaDubboAnnotationApplication.java
@@ -1,17 +1,18 @@
 /*
- * 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
+ * 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.
+ *     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.alibaba.dubbo.service.annotation;
diff --git 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/annotation/impl/DubboClassTestServiceImpl.java
 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/annotation/impl/DubboClassTestServiceImpl.java
index 55822fae9..3f3a031cc 100644
--- 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/annotation/impl/DubboClassTestServiceImpl.java
+++ 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/annotation/impl/DubboClassTestServiceImpl.java
@@ -1,31 +1,26 @@
 /*
- * 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
+ * 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.
+ *     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.alibaba.dubbo.service.annotation.impl;
 
-
-import com.alibaba.dubbo.rpc.RpcContext;
 import org.apache.shenyu.client.alibaba.dubbo.annotation.ShenyuService;
-import org.apache.shenyu.client.dubbo.common.annotation.ShenyuDubboClient;
-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;
 import org.apache.shenyu.examples.dubbo.api.service.DubboClassTestService;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 import java.util.Collections;
 import java.util.Random;
diff --git 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/annotation/impl/DubboMultiParamServiceImpl.java
 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/annotation/impl/DubboMultiParamServiceImpl.java
index b90076137..db9c4f9fa 100644
--- 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/annotation/impl/DubboMultiParamServiceImpl.java
+++ 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/annotation/impl/DubboMultiParamServiceImpl.java
@@ -1,17 +1,18 @@
 /*
- * 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
+ * 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.
+ *     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.alibaba.dubbo.service.annotation.impl;
diff --git 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/annotation/impl/DubboTestServiceImpl.java
 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/annotation/impl/DubboTestServiceImpl.java
index b7ef9c7d1..066c963dc 100644
--- 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/annotation/impl/DubboTestServiceImpl.java
+++ 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/annotation/impl/DubboTestServiceImpl.java
@@ -1,17 +1,18 @@
 /*
- * 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
+ * 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.
+ *     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.alibaba.dubbo.service.annotation.impl;
diff --git 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/TestAlibabaDubboApplication.java
 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/TestAlibabaDubboApplication.java
index 07f4e0165..611c92967 100644
--- 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/TestAlibabaDubboApplication.java
+++ 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/TestAlibabaDubboApplication.java
@@ -1,17 +1,18 @@
 /*
- * 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
+ * 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.
+ *     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.alibaba.dubbo.service;
@@ -24,7 +25,7 @@ import org.springframework.context.annotation.ImportResource;
  * TestDubboApplication.
  */
 @SpringBootApplication
-@ImportResource({"classpath:spring-dubbo.xml"})
+@ImportResource("classpath:spring-dubbo.xml")
 public class TestAlibabaDubboApplication {
 
     /**
diff --git 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/impl/DubboClassTestServiceImpl.java
 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/impl/DubboClassTestServiceImpl.java
index 4e9f9c1d9..d7dcaf15e 100644
--- 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/impl/DubboClassTestServiceImpl.java
+++ 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/impl/DubboClassTestServiceImpl.java
@@ -1,17 +1,18 @@
 /*
- * 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
+ * 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.
+ *     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.alibaba.dubbo.service.impl;
diff --git 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/impl/DubboMultiParamServiceImpl.java
 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/impl/DubboMultiParamServiceImpl.java
index 36811d0dd..eb54e11ec 100644
--- 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/impl/DubboMultiParamServiceImpl.java
+++ 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/impl/DubboMultiParamServiceImpl.java
@@ -1,17 +1,18 @@
 /*
- * 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
+ * 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.
+ *     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.alibaba.dubbo.service.impl;
diff --git 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/impl/DubboTestServiceImpl.java
 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/impl/DubboTestServiceImpl.java
index 8ac3b4e6c..2c3df93b8 100644
--- 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/impl/DubboTestServiceImpl.java
+++ 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-alibaba-dubbo-service/src/main/java/org/apache/shenyu/examples/alibaba/dubbo/service/impl/DubboTestServiceImpl.java
@@ -1,17 +1,18 @@
 /*
- * 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
+ * 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.
+ *     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.alibaba.dubbo.service.impl;
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 df9f3840e..a9f6aa0c7 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
@@ -1,17 +1,18 @@
 /*
- * 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
+ * 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.
+ *     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.apache.dubbo.service.annotation.impl;
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/DubboTestServiceImpl.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/DubboTestServiceImpl.java
index 8512c6f44..071f455d3 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/DubboTestServiceImpl.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/DubboTestServiceImpl.java
@@ -1,17 +1,18 @@
 /*
- * 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
+ * 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.
+ *     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.apache.dubbo.service.annotation.impl;
diff --git 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-xml/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/xml/TestApacheDubboXmlApplication.java
 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-xml/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/xml/TestApacheDubboXmlApplication.java
index b46bb490c..f3a962ae5 100644
--- 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-xml/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/xml/TestApacheDubboXmlApplication.java
+++ 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-xml/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/xml/TestApacheDubboXmlApplication.java
@@ -1,17 +1,18 @@
 /*
- * 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
+ * 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.
+ *     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.apache.dubbo.service.xml;
@@ -27,8 +28,12 @@ import org.springframework.context.annotation.ImportResource;
 @ImportResource({"classpath:spring-dubbo.xml", "classpath:shenyu.xml"})
 public class TestApacheDubboXmlApplication {
 
-    public static void main(String[] args) {
+    /**
+     * Main Entrance.
+     * @param args startup arguments
+     */
+    public static void main(final String[] args) {
         SpringApplication.run(TestApacheDubboXmlApplication.class, args);
     }
 
-}
\ No newline at end of file
+}
diff --git 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-xml/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/xml/impl/DubboClassTestServiceImpl.java
 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-xml/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/xml/impl/DubboClassTestServiceImpl.java
index 1cd8ae39a..80b968b8e 100644
--- 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-xml/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/xml/impl/DubboClassTestServiceImpl.java
+++ 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-xml/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/xml/impl/DubboClassTestServiceImpl.java
@@ -1,17 +1,18 @@
 /*
- * 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
+ * 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.
+ *     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.apache.dubbo.service.xml.impl;
diff --git 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-xml/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/xml/impl/DubboTestServiceImpl.java
 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-xml/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/xml/impl/DubboTestServiceImpl.java
index 90b0be07e..6322b5fd1 100644
--- 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-xml/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/xml/impl/DubboTestServiceImpl.java
+++ 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service-xml/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/xml/impl/DubboTestServiceImpl.java
@@ -1,17 +1,18 @@
 /*
- * 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
+ * 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.
+ *     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.apache.dubbo.service.xml.impl;
diff --git 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/impl/DubboTestServiceImpl.java
 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/impl/DubboTestServiceImpl.java
index 55a7cb85c..de2799a8a 100644
--- 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/impl/DubboTestServiceImpl.java
+++ 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-apache-dubbo-service/src/main/java/org/apache/shenyu/examples/apache/dubbo/service/impl/DubboTestServiceImpl.java
@@ -1,17 +1,18 @@
 /*
- * 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
+ * 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.
+ *     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.apache.dubbo.service.impl;
diff --git 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-spring-cloud-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/spring/cloud/dubbo/service/annotation/impl/TestServiceImpl.java
 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-spring-cloud-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/spring/cloud/dubbo/service/annotation/impl/TestServiceImpl.java
index 19e2000e6..c9c0da46b 100644
--- 
a/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-spring-cloud-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/spring/cloud/dubbo/service/annotation/impl/TestServiceImpl.java
+++ 
b/shenyu-examples/shenyu-examples-dubbo/shenyu-examples-spring-cloud-alibaba-dubbo-service-annotation/src/main/java/org/apache/shenyu/examples/spring/cloud/dubbo/service/annotation/impl/TestServiceImpl.java
@@ -1,17 +1,18 @@
 /*
- * 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
+ * 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.
+ *     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.spring.cloud.dubbo.service.annotation.impl;
diff --git a/shenyu-examples/shenyu-examples-grpc/pom.xml 
b/shenyu-examples/shenyu-examples-grpc/pom.xml
index d4b2b3f05..3e11bb7ad 100644
--- a/shenyu-examples/shenyu-examples-grpc/pom.xml
+++ b/shenyu-examples/shenyu-examples-grpc/pom.xml
@@ -90,6 +90,7 @@
                 <groupId>org.xolstice.maven.plugins</groupId>
                 <artifactId>protobuf-maven-plugin</artifactId>
                 <version>0.6.1</version>
+                <extensions>true</extensions>
                 <configuration>
                     
<protocArtifact>com.google.protobuf:protoc:${protobuf.version}:exe:${os.detected.classifier}</protocArtifact>
                     <pluginId>grpc-java</pluginId>
diff --git 
a/shenyu-examples/shenyu-examples-grpc/src/main/java/org/apache/shenyu/examples/grpc/demo/EventServiceImpl.java
 
b/shenyu-examples/shenyu-examples-grpc/src/main/java/org/apache/shenyu/examples/grpc/demo/EventServiceImpl.java
index 8704c59ac..0bc8f17d2 100644
--- 
a/shenyu-examples/shenyu-examples-grpc/src/main/java/org/apache/shenyu/examples/grpc/demo/EventServiceImpl.java
+++ 
b/shenyu-examples/shenyu-examples-grpc/src/main/java/org/apache/shenyu/examples/grpc/demo/EventServiceImpl.java
@@ -17,10 +17,10 @@
 
 package org.apache.shenyu.examples.grpc.demo;
 
-
 import event.EventRequest;
 import event.EventResponse;
 import event.EventServiceGrpc;
+
 import io.grpc.stub.StreamObserver;
 import org.apache.shenyu.client.grpc.common.annotation.ShenyuGrpcClient;
 import org.slf4j.Logger;
@@ -35,7 +35,7 @@ public class EventServiceImpl extends 
EventServiceGrpc.EventServiceImplBase {
     
     @ShenyuGrpcClient("/sendEvent")
     @Override
-    public void sendEvent(EventRequest request, StreamObserver<EventResponse> 
responseObserver) {
+    public void sendEvent(final EventRequest request, final 
StreamObserver<EventResponse> responseObserver) {
         EventResponse response = EventResponse.newBuilder().setData("received 
event:" + request.getData()).build();
         responseObserver.onNext(response);
         responseObserver.onCompleted();
@@ -43,10 +43,10 @@ public class EventServiceImpl extends 
EventServiceGrpc.EventServiceImplBase {
 
     @ShenyuGrpcClient("/sendEventStream")
     @Override
-    public StreamObserver<EventRequest> 
sendEventStream(StreamObserver<EventResponse> responseObserver) {
+    public StreamObserver<EventRequest> sendEventStream(final 
StreamObserver<EventResponse> responseObserver) {
         return new StreamObserver<EventRequest>() {
             @Override
-            public void onNext(EventRequest request) {
+            public void onNext(final EventRequest request) {
                 EventResponse responseData = EventResponse.newBuilder()
                         .setData("received event:" + request.getData())
                         .build();
diff --git 
a/shenyu-examples/shenyu-examples-grpc/src/main/java/org/apache/shenyu/examples/grpc/demo/HelloServiceImpl.java
 
b/shenyu-examples/shenyu-examples-grpc/src/main/java/org/apache/shenyu/examples/grpc/demo/HelloServiceImpl.java
index d19ce8343..ca7260ff6 100644
--- 
a/shenyu-examples/shenyu-examples-grpc/src/main/java/org/apache/shenyu/examples/grpc/demo/HelloServiceImpl.java
+++ 
b/shenyu-examples/shenyu-examples-grpc/src/main/java/org/apache/shenyu/examples/grpc/demo/HelloServiceImpl.java
@@ -1,4 +1,3 @@
-package org.apache.shenyu.examples.grpc.demo;
 /*
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with
@@ -16,16 +15,18 @@ package org.apache.shenyu.examples.grpc.demo;
  * limitations under the License.
  */
 
+package org.apache.shenyu.examples.grpc.demo;
+
 import hello.HelloRequest;
 import hello.HelloResponse;
 import hello.HelloServiceGrpc;
+
 import io.grpc.stub.StreamObserver;
 import org.apache.shenyu.client.grpc.common.annotation.ShenyuGrpcClient;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Service;
 
-
 @ShenyuGrpcClient("/helloService/**")
 @Service
 public class HelloServiceImpl extends HelloServiceGrpc.HelloServiceImplBase {
@@ -33,17 +34,17 @@ public class HelloServiceImpl extends 
HelloServiceGrpc.HelloServiceImplBase {
     private static final Logger LOG = 
LoggerFactory.getLogger(HelloServiceImpl.class);
     
     @Override
-    public void hello(HelloRequest request, StreamObserver<HelloResponse> 
responseObserver) {
+    public void hello(final HelloRequest request, final 
StreamObserver<HelloResponse> responseObserver) {
         HelloResponse response = HelloResponse.newBuilder().setData("hello: " 
+ request.getData()).build();
         responseObserver.onNext(response);
         responseObserver.onCompleted();
     }
 
     @Override
-    public StreamObserver<HelloRequest> 
helloEveryOne(StreamObserver<HelloResponse> responseObserver) {
+    public StreamObserver<HelloRequest> helloEveryOne(final 
StreamObserver<HelloResponse> responseObserver) {
         return new StreamObserver<HelloRequest>() {
             @Override
-            public void onNext(HelloRequest request) {
+            public void onNext(final HelloRequest request) {
                 HelloResponse responseData = HelloResponse.newBuilder()
                         .setData("hello: " + request.getData())
                         .build();
diff --git 
a/shenyu-examples/shenyu-examples-grpc/src/main/java/org/apache/shenyu/examples/grpc/stream/StreamServiceImpl.java
 
b/shenyu-examples/shenyu-examples-grpc/src/main/java/org/apache/shenyu/examples/grpc/stream/StreamServiceImpl.java
index 2ac784900..07549e6ed 100644
--- 
a/shenyu-examples/shenyu-examples-grpc/src/main/java/org/apache/shenyu/examples/grpc/stream/StreamServiceImpl.java
+++ 
b/shenyu-examples/shenyu-examples-grpc/src/main/java/org/apache/shenyu/examples/grpc/stream/StreamServiceImpl.java
@@ -94,7 +94,7 @@ public class StreamServiceImpl extends 
StreamServiceGrpc.StreamServiceImplBase {
             private final ResponseData.Builder builder = 
ResponseData.newBuilder();
             
             @Override
-            public void onNext(RequestData value) {
+            public void onNext(final RequestData value) {
                 LOG.info("bidiStreamingFun received: {}", value.getText());
                 ResponseData responseData = ResponseData.newBuilder()
                         .setText("bidiStreamingFun response: hello")
diff --git 
a/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/config/HttpServerConfig.java
 
b/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/config/HttpServerConfig.java
index 59b312ffc..1e80701a0 100644
--- 
a/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/config/HttpServerConfig.java
+++ 
b/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/config/HttpServerConfig.java
@@ -35,12 +35,21 @@ import java.util.concurrent.TimeUnit;
  */
 @Configuration
 public class HttpServerConfig {
-    
+
+    /**
+     * define a bean with name monoRouterFunction for test.
+     * @param shenyuTestHttpRouter shenyuTestHttpRouter
+     * @return route functions
+     */
     @Bean
     public RouterFunction<ServerResponse> monoRouterFunction(final 
ShenyuTestHttpRouter shenyuTestHttpRouter) {
         return shenyuTestHttpRouter.routes();
     }
-    
+
+    /**
+     * define scheduler bean.
+     * @return Scheduler bean.
+     */
     @Bean
     public Scheduler scheduler() {
         ExecutorService threadPool = new ThreadPoolExecutor(100, 100,
diff --git 
a/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/HttpTestController.java
 
b/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/HttpTestController.java
index 272519d0e..9cb512c0e 100644
--- 
a/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/HttpTestController.java
+++ 
b/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/HttpTestController.java
@@ -423,7 +423,7 @@ public class HttpTestController {
      * test big request body.
      *
      * @param params request body
-     * @return
+     * @return the result of post
      */
     @PostMapping("/bigRequestBody")
     public ResultBean postBigRequestBody(@RequestBody final UserDTO params) {
diff --git 
a/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/OrderController.java
 
b/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/OrderController.java
index ac9f8bc71..4694ccdc8 100644
--- 
a/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/OrderController.java
+++ 
b/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/OrderController.java
@@ -80,7 +80,7 @@ public class OrderController {
     }
 
     /**
-     * Test rest ful order dto.
+     * Test restful order dto.
      *
      * @param id the id
      * @return the order dto
@@ -91,6 +91,11 @@ public class OrderController {
         return build(id, "hello world restful inline " + id);
     }
 
+    /**
+     * Test oauth2 request.
+     * @param request request with the oauth2 headers
+     * @return the oauth2 dto
+     */
     @GetMapping("/oauth2/test")
     @ShenyuSpringMvcClient("/oauth2/test")
     public OAuth2DTO testRestFul(final ServerHttpRequest request) {
diff --git 
a/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/RequestController.java
 
b/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/RequestController.java
index 274ccfde8..a56fa4efa 100644
--- 
a/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/RequestController.java
+++ 
b/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/RequestController.java
@@ -40,6 +40,12 @@ public class RequestController {
 
     private static final Logger LOGGER = 
LoggerFactory.getLogger(RequestController.class);
 
+    /**
+     * Test for header annotation.
+     * @param headerKey1  one RequestHeader key
+     * @param serverHttpRequest  request
+     * @return response
+     */
     @GetMapping(path = "/header")
     public Mono<String> testRequestHeader(@RequestHeader("header_key1") final 
String headerKey1,
                                           final ServerHttpRequest 
serverHttpRequest) {
@@ -47,6 +53,12 @@ public class RequestController {
         return successMono(serverHttpRequest.getHeaders());
     }
 
+    /**
+     * Test for param annotation.
+     * @param parameterKey1  one RequestParam key
+     * @param serverHttpRequest  request
+     * @return  response
+     */
     @PostMapping(path = "/parameter")
     public Mono<String> testRequestParameter(@RequestParam("parameter_key1") 
final String parameterKey1,
                                              final ServerHttpRequest 
serverHttpRequest) {
@@ -54,6 +66,12 @@ public class RequestController {
         return successMono(serverHttpRequest.getQueryParams());
     }
 
+    /**
+     * Test for cookie annotation.
+     * @param userId  a cookie key with the name userId
+     * @param serverHttpRequest  request
+     * @return  response
+     */
     @GetMapping(path = "/cookie")
     public Mono<String> testRequestCookie(@CookieValue("userId") final String 
userId,
                                           final ServerHttpRequest 
serverHttpRequest) {
diff --git 
a/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/ShenyuClientPathController.java
 
b/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/ShenyuClientPathController.java
index 9c255abf5..b4e0dbab3 100644
--- 
a/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/ShenyuClientPathController.java
+++ 
b/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/ShenyuClientPathController.java
@@ -45,6 +45,19 @@ public class ShenyuClientPathController {
         return "hello! " + HELLO_SUFFIX;
     }
 
+    /**
+     * hello. br
+     * no support gateway.
+     *
+     * @param name say hello user name
+     * @return result
+     */
+    @RequestMapping("shenyu/client/hi")
+    @ShenyuSpringMvcClient("shenyu/client/hi")
+    public String hello(final String name) {
+        return "hi! " + name + "! " + HELLO_SUFFIX;
+    }
+
     /**
      * timeout.
      *
@@ -60,19 +73,6 @@ public class ShenyuClientPathController {
         }
         return "hello! " + HELLO_SUFFIX;
     }
-
-    /**
-     * hello. br
-     * no support gateway.
-     *
-     * @param name say hello user name
-     * @return result
-     */
-    @RequestMapping("shenyu/client/hi")
-    @ShenyuSpringMvcClient("shenyu/client/hi")
-    public String hello(final String name) {
-        return "hi! " + name + "! " + HELLO_SUFFIX;
-    }
     
     /**
      * hi.
diff --git 
a/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/UploadController.java
 
b/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/UploadController.java
index 3ef9659b3..8609f8b17 100644
--- 
a/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/UploadController.java
+++ 
b/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/controller/UploadController.java
@@ -20,12 +20,13 @@ package org.apache.shenyu.examples.http.controller;
 import org.apache.shenyu.client.springmvc.annotation.ShenyuSpringMvcClient;
 import org.springframework.http.MediaType;
 import org.springframework.http.codec.multipart.FilePart;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.web.multipart.MultipartFile;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestPart;
+import org.springframework.web.bind.annotation.RestController;
 import reactor.core.publisher.Flux;
 import reactor.core.publisher.Mono;
 
-import java.util.Arrays;
 import java.util.stream.Collectors;
 
 /**
@@ -37,22 +38,22 @@ import java.util.stream.Collectors;
 public class UploadController {
 
     /**
-     * webFlux uploadFile
-     * @param file
-     * @return
+     * webFlux uploadFile.
+     * @param file  the file you upload
+     * @return  response
      */
-    @PostMapping(value = "/webFluxSingle", consumes = 
{MediaType.MULTIPART_FORM_DATA_VALUE,MediaType.TEXT_PLAIN_VALUE})
-    public Mono<String> webFluxSingle(@RequestPart("file") FilePart file){
+    @PostMapping(value = "/webFluxSingle", consumes = 
{MediaType.MULTIPART_FORM_DATA_VALUE, MediaType.TEXT_PLAIN_VALUE})
+    public Mono<String> webFluxSingle(@RequestPart("file") final FilePart 
file) {
         return Mono.just(file.filename());
     }
 
     /**
-     * webFlux uploadFiles
-     * @param files
-     * @return
+     * webFlux uploadFiles.
+     * @param files  the file you upload
+     * @return response
      */
-    @PostMapping(value = "/webFluxFiles", consumes = 
{MediaType.MULTIPART_FORM_DATA_VALUE,MediaType.TEXT_PLAIN_VALUE})
-    public Mono<String> webFluxFiles(@RequestPart(value = "files", required = 
false) Flux<FilePart> files){
+    @PostMapping(value = "/webFluxFiles", consumes = 
{MediaType.MULTIPART_FORM_DATA_VALUE, MediaType.TEXT_PLAIN_VALUE})
+    public Mono<String> webFluxFiles(@RequestPart(value = "files", required = 
false) final Flux<FilePart> files) {
         return files.map(FilePart::filename).collect(Collectors.joining(","));
     }
 }
diff --git 
a/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/router/ShenyuTestHttpRouter.java
 
b/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/router/ShenyuTestHttpRouter.java
index b9607ec05..42fadc2fe 100644
--- 
a/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/router/ShenyuTestHttpRouter.java
+++ 
b/shenyu-examples/shenyu-examples-http/src/main/java/org/apache/shenyu/examples/http/router/ShenyuTestHttpRouter.java
@@ -30,7 +30,10 @@ import reactor.core.publisher.Mono;
 import java.util.concurrent.atomic.AtomicInteger;
 
 import static org.springframework.http.MediaType.APPLICATION_JSON;
-import static 
org.springframework.web.reactive.function.server.RequestPredicates.*;
+import static 
org.springframework.web.reactive.function.server.RequestPredicates.GET;
+import static 
org.springframework.web.reactive.function.server.RequestPredicates.POST;
+import static 
org.springframework.web.reactive.function.server.RequestPredicates.accept;
+import static 
org.springframework.web.reactive.function.server.RequestPredicates.path;
 import static 
org.springframework.web.reactive.function.server.RouterFunctions.nest;
 import static 
org.springframework.web.reactive.function.server.RouterFunctions.route;
 import static 
org.springframework.web.reactive.function.server.ServerResponse.ok;
@@ -52,11 +55,12 @@ public class ShenyuTestHttpRouter {
      */
     public RouterFunction<ServerResponse> routes() {
         return nest(path("/test"),
-                route(POST("/helloWorld2").and(accept(APPLICATION_JSON)), 
this::postHandler)
-                        .and(route(GET("/rewrite"), this::rewriteHandler))
-                        .and(route(GET("/pdm"), this::pdmHttpGet))
-                        .and(route(GET("/oms"), this::omsHttpGet))
-                        .and(route(GET("/timeout"), this::testRetry)));
+                route(POST("/helloWorld2")
+                    .and(accept(APPLICATION_JSON)), this::postHandler)
+                    .and(route(GET("/rewrite"), this::rewriteHandler))
+                    .and(route(GET("/pdm"), this::pdmHttpGet))
+                    .and(route(GET("/oms"), this::omsHttpGet))
+                    .and(route(GET("/timeout"), this::testRetry)));
     }
 
     @NonNull
diff --git 
a/shenyu-examples/shenyu-examples-https/src/main/java/org/apache/shenyu/examples/https/controller/UploadController.java
 
b/shenyu-examples/shenyu-examples-https/src/main/java/org/apache/shenyu/examples/https/controller/UploadController.java
index ac4a72c49..5e4f53954 100644
--- 
a/shenyu-examples/shenyu-examples-https/src/main/java/org/apache/shenyu/examples/https/controller/UploadController.java
+++ 
b/shenyu-examples/shenyu-examples-https/src/main/java/org/apache/shenyu/examples/https/controller/UploadController.java
@@ -19,7 +19,6 @@ package org.apache.shenyu.examples.https.controller;
 
 import org.apache.shenyu.client.springmvc.annotation.ShenyuSpringMvcClient;
 import org.springframework.http.MediaType;
-import org.springframework.http.codec.multipart.FilePart;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestPart;
@@ -37,12 +36,12 @@ public class UploadController {
     /**
      * upload file.
      *
-     * @param file
+     * @param file  file
      * @return filename
      */
     @PostMapping(value = "/file", consumes = 
{MediaType.MULTIPART_FORM_DATA_VALUE})
     @ShenyuSpringMvcClient("/file")
-    public String uploadFile(@RequestPart("file") MultipartFile file){
+    public String uploadFile(@RequestPart("file") final MultipartFile file) {
         return file.getOriginalFilename();
     }
 }
diff --git 
a/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-api/src/main/java/org/apache/shenyu/examples/motan/service/MotanClassDemoService.java
 
b/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-api/src/main/java/org/apache/shenyu/examples/motan/service/MotanClassDemoService.java
index 126fabd55..e298fa6a0 100644
--- 
a/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-api/src/main/java/org/apache/shenyu/examples/motan/service/MotanClassDemoService.java
+++ 
b/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-api/src/main/java/org/apache/shenyu/examples/motan/service/MotanClassDemoService.java
@@ -24,6 +24,18 @@ import com.weibo.api.motan.transport.async.MotanAsync;
  */
 @MotanAsync
 public interface MotanClassDemoService {
+
+    /**
+     * hello demo for Motan.
+     * @param name  the name to hello
+     * @return  response
+     */
     String hello(String name);
-    String testTimeOut(String timeout);
+
+    /**
+     * timeout for Motan.
+     * @param seconds  seconds to timeout
+     * @return  response
+     */
+    String testTimeOut(long seconds);
 }
diff --git 
a/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-api/src/main/java/org/apache/shenyu/examples/motan/service/MotanDemoService.java
 
b/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-api/src/main/java/org/apache/shenyu/examples/motan/service/MotanDemoService.java
index 56aaa3309..38058c374 100644
--- 
a/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-api/src/main/java/org/apache/shenyu/examples/motan/service/MotanDemoService.java
+++ 
b/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-api/src/main/java/org/apache/shenyu/examples/motan/service/MotanDemoService.java
@@ -24,6 +24,18 @@ import com.weibo.api.motan.transport.async.MotanAsync;
  */
 @MotanAsync
 public interface MotanDemoService {
+
+    /**
+     * hello demo for Motan.
+     * @param name  the name to hello
+     * @return  response
+     */
     String hello(String name);
-    String testTimeOut(String timeout);
+
+    /**
+     * timeout for Motan.
+     * @param seconds  seconds to timeout
+     * @return  response
+     */
+    String testTimeOut(long seconds);
 }
diff --git 
a/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-service/src/main/java/org/apache/shenyu/examples/motan/service/TestMotanApplication.java
 
b/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-service/src/main/java/org/apache/shenyu/examples/motan/service/TestMotanApplication.java
index 7715f4578..5f1d5a0fe 100644
--- 
a/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-service/src/main/java/org/apache/shenyu/examples/motan/service/TestMotanApplication.java
+++ 
b/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-service/src/main/java/org/apache/shenyu/examples/motan/service/TestMotanApplication.java
@@ -44,6 +44,10 @@ public class TestMotanApplication {
         
MotanSwitcherUtil.setSwitcherValue(MotanConstants.REGISTRY_HEARTBEAT_SWITCHER, 
true);
     }
 
+    /**
+     * define the annotation bean, set the scan package.
+     * @return  annotationBean
+     */
     @Bean
     public AnnotationBean motanAnnotationBean() {
         AnnotationBean motanAnnotationBean = new AnnotationBean();
@@ -51,6 +55,10 @@ public class TestMotanApplication {
         return motanAnnotationBean;
     }
 
+    /**
+     * define a bean with name demoMotan of ProtocolConfigBean.
+     * @return demoMotan
+     */
     @Bean(name = "demoMotan")
     public ProtocolConfigBean protocolConfig1() {
         ProtocolConfigBean config = new ProtocolConfigBean();
@@ -60,6 +68,11 @@ public class TestMotanApplication {
         return config;
     }
 
+    /**
+     * define a bean with name registryConfig1 of RegistryConfigBean.
+     * @param properties  registry properties
+     * @return registryConfig1
+     */
     @Bean(name = "registryConfig1")
     public RegistryConfigBean registryConfig(final RegistryProperties 
properties) {
         RegistryConfigBean config = new RegistryConfigBean();
@@ -68,6 +81,10 @@ public class TestMotanApplication {
         return config;
     }
 
+    /**
+     * define a bean with name baseServiceConfig of BasicServiceConfigBean.
+     * @return baseServiceConfig
+     */
     @Bean(name = "baseServiceConfig")
     public BasicServiceConfigBean baseServiceConfig() {
         BasicServiceConfigBean config = new BasicServiceConfigBean();
diff --git 
a/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-service/src/main/java/org/apache/shenyu/examples/motan/service/impl/MotanClassDemoServiceImpl.java
 
b/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-service/src/main/java/org/apache/shenyu/examples/motan/service/impl/MotanClassDemoServiceImpl.java
index 35745ef10..accb3482a 100644
--- 
a/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-service/src/main/java/org/apache/shenyu/examples/motan/service/impl/MotanClassDemoServiceImpl.java
+++ 
b/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-service/src/main/java/org/apache/shenyu/examples/motan/service/impl/MotanClassDemoServiceImpl.java
@@ -34,9 +34,9 @@ public class MotanClassDemoServiceImpl implements 
MotanClassDemoService {
     }
 
     @Override
-    public String testTimeOut(final String timeout) {
+    public String testTimeOut(final long timeout) {
         try {
-            Thread.sleep((long) (Double.parseDouble(timeout) * 1000));
+            Thread.sleep(timeout * 1000);
         } catch (InterruptedException e) {
             throw new RuntimeException(e);
         }
diff --git 
a/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-service/src/main/java/org/apache/shenyu/examples/motan/service/impl/MotanDemoServiceImpl.java
 
b/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-service/src/main/java/org/apache/shenyu/examples/motan/service/impl/MotanDemoServiceImpl.java
index fc85201f1..f8e36d5a8 100644
--- 
a/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-service/src/main/java/org/apache/shenyu/examples/motan/service/impl/MotanDemoServiceImpl.java
+++ 
b/shenyu-examples/shenyu-examples-motan/shenyu-examples-motan-service/src/main/java/org/apache/shenyu/examples/motan/service/impl/MotanDemoServiceImpl.java
@@ -38,12 +38,12 @@ public class MotanDemoServiceImpl implements 
MotanDemoService {
 
     @Override
     @ShenyuMotanClient("/timeout")
-    public String testTimeOut(final String timeout) {
+    public String testTimeOut(final long seconds) {
         try {
-            Thread.sleep((long) (Double.parseDouble(timeout) * 1000));
+            Thread.sleep(seconds * 1000);
         } catch (InterruptedException e) {
             throw new RuntimeException(e);
         }
-        return "hello timeout " + timeout + "s";
+        return "hello timeout " + seconds + "s";
     }
 }
diff --git 
a/shenyu-examples/shenyu-examples-plugin/src/main/java/org/apache/shenyu/examples/plugin/ext/ExtendsShenyuPlugin.java
 
b/shenyu-examples/shenyu-examples-plugin/src/main/java/org/apache/shenyu/examples/plugin/ext/ExtendsShenyuPlugin.java
index 1ef3d9172..88b74b87c 100644
--- 
a/shenyu-examples/shenyu-examples-plugin/src/main/java/org/apache/shenyu/examples/plugin/ext/ExtendsShenyuPlugin.java
+++ 
b/shenyu-examples/shenyu-examples-plugin/src/main/java/org/apache/shenyu/examples/plugin/ext/ExtendsShenyuPlugin.java
@@ -43,11 +43,19 @@ public class ExtendsShenyuPlugin extends 
AbstractShenyuPlugin {
     protected Mono<Void> doExecute(final ServerWebExchange exchange, final 
ShenyuPluginChain chain, final SelectorData selector, final RuleData rule) {
         return chain.execute(exchange);
     }
-    
+
+    /**
+     * get the zer bean from custom plugin.
+     * @return  ExtendsShenyuZerBean
+     */
     public ExtendsShenyuZerBean getZerBean() {
         return zerBean;
     }
-    
+
+    /**
+     * get the dispatcher handler.
+     * @return  dispatcherHandler
+     */
     public DispatcherHandler getDispatcherHandler() {
         return dispatcherHandler;
     }
diff --git 
a/shenyu-examples/shenyu-examples-plugin/src/main/java/org/apache/shenyu/examples/plugin/ext/ExtendsShenyuZerBean.java
 
b/shenyu-examples/shenyu-examples-plugin/src/main/java/org/apache/shenyu/examples/plugin/ext/ExtendsShenyuZerBean.java
index b61c1b8fd..bd8d43aa0 100644
--- 
a/shenyu-examples/shenyu-examples-plugin/src/main/java/org/apache/shenyu/examples/plugin/ext/ExtendsShenyuZerBean.java
+++ 
b/shenyu-examples/shenyu-examples-plugin/src/main/java/org/apache/shenyu/examples/plugin/ext/ExtendsShenyuZerBean.java
@@ -20,9 +20,10 @@ package org.apache.shenyu.examples.plugin.ext;
 import org.springframework.stereotype.Component;
 
 /**
- * ExtendsShenyuBean .
+ * ExtendsShenyuBean.
  */
 @Component
 public class ExtendsShenyuZerBean {
+    
     private final String name = "test";
 }
diff --git 
a/shenyu-examples/shenyu-examples-springcloud/src/main/java/org/apache/shenyu/examples/springcloud/controller/UploadController.java
 
b/shenyu-examples/shenyu-examples-springcloud/src/main/java/org/apache/shenyu/examples/springcloud/controller/UploadController.java
index d6aa25c89..f2afef25a 100644
--- 
a/shenyu-examples/shenyu-examples-springcloud/src/main/java/org/apache/shenyu/examples/springcloud/controller/UploadController.java
+++ 
b/shenyu-examples/shenyu-examples-springcloud/src/main/java/org/apache/shenyu/examples/springcloud/controller/UploadController.java
@@ -18,10 +18,8 @@
 package org.apache.shenyu.examples.springcloud.controller;
 
 import org.apache.shenyu.client.springcloud.annotation.ShenyuSpringCloudClient;
-import org.apache.shenyu.examples.springcloud.dto.UserDTO;
 import org.springframework.http.MediaType;
 import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestPart;
 import org.springframework.web.bind.annotation.RestController;
@@ -43,7 +41,7 @@ public class UploadController {
      */
     @PostMapping(value = "/file", consumes = 
{MediaType.MULTIPART_FORM_DATA_VALUE})
     @ShenyuSpringCloudClient(path = "/file")
-    public String post(@RequestPart("file") MultipartFile file) {
+    public String post(@RequestPart("file")final MultipartFile file) {
         return file.getOriginalFilename();
     }
 }
diff --git 
a/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/controller/OrderController.java
 
b/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/controller/OrderController.java
index 354d74cee..aeb33652d 100644
--- 
a/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/controller/OrderController.java
+++ 
b/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/controller/OrderController.java
@@ -60,7 +60,7 @@ public class OrderController {
     @GetMapping("/findById")
     @ShenyuSpringMvcClient("/findById")
     public OrderDTO findById(@RequestParam("id") final String id) {
-        return build(id,"hello world findById");
+        return build(id, "hello world findById");
     }
 
     /**
@@ -73,7 +73,7 @@ public class OrderController {
     @GetMapping("/path/{id}/{name}")
     @ShenyuSpringMvcClient("/path/**")
     public OrderDTO getPathVariable(@PathVariable("id") final String id, 
@PathVariable("name") final String name) {
-        return build(id,"hello world restful: " + name);
+        return build(id, "hello world restful: " + name);
     }
 
     /**
@@ -85,9 +85,14 @@ public class OrderController {
     @GetMapping("/path/{id}/name")
     @ShenyuSpringMvcClient("/path/**/name")
     public OrderDTO testRestFul(@PathVariable("id") final String id) {
-        return build(id,"hello world restful inline " + id);
+        return build(id, "hello world restful inline " + id);
     }
 
+    /**
+     * Test oauth2 request.
+     * @param request request with the oauth2 headers
+     * @return the oauth2 dto
+     */
     @GetMapping("/oauth2/test")
     @ShenyuSpringMvcClient("/oauth2/test")
     public OAuth2DTO testRestFul(final HttpServletRequest request) {
diff --git 
a/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/controller/UploadController.java
 
b/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/controller/UploadController.java
index b206834c0..9c77dc934 100644
--- 
a/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/controller/UploadController.java
+++ 
b/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/controller/UploadController.java
@@ -36,9 +36,9 @@ import java.util.stream.Collectors;
 public class UploadController {
 
     /**
-     * mvc uploadFile
-     * @param file
-     * @return
+     * mvc uploadFile.
+     * @param file file
+     * @return  response
      */
     @PostMapping(value = "/singleFile")
     public String singleFile(@RequestParam("file") final MultipartFile file) {
@@ -46,9 +46,9 @@ public class UploadController {
     }
 
     /**
-     * mvc uploadFiles
-     * @param files
-     * @return
+     * mvc uploadFiles.
+     * @param files files.
+     * @return  response
      */
     @PostMapping(value = "/files")
     public String files(@RequestParam("files") final MultipartFile[] files) {
diff --git 
a/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/dto/OAuth2DTO.java
 
b/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/dto/OAuth2DTO.java
index a5f216247..522c8941c 100644
--- 
a/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/dto/OAuth2DTO.java
+++ 
b/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/dto/OAuth2DTO.java
@@ -18,12 +18,12 @@
 package org.apache.shenyu.examples.springmvc.dto;
 
 /**
- * The type OAuth Authorization dto
+ * The type OAuth Authorization dto.
  */
 public class OAuth2DTO {
 
     /**
-     * oauth token
+     * oauth token.
      */
     private String token;
 
diff --git 
a/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/dto/UserDTO.java
 
b/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/dto/UserDTO.java
index a2361121f..8e6eeb7ee 100644
--- 
a/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/dto/UserDTO.java
+++ 
b/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/dto/UserDTO.java
@@ -25,12 +25,12 @@ import java.util.StringJoiner;
 public class UserDTO {
 
     /**
-     * user id
+     * user id.
      */
     private String userId;
 
     /**
-     * username
+     * username.
      */
     private String userName;
 
@@ -77,6 +77,5 @@ public class UserDTO {
                 .add("userName='" + userName + "'")
                 .toString();
     }
-
-
+    
 }
diff --git 
a/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/result/ResultBean.java
 
b/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/result/ResultBean.java
index 801729e2b..c4d7026b4 100644
--- 
a/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/result/ResultBean.java
+++ 
b/shenyu-examples/shenyu-examples-springmvc-tomcat/src/main/java/org/apache/shenyu/examples/springmvc/result/ResultBean.java
@@ -23,17 +23,17 @@ package org.apache.shenyu.examples.springmvc.result;
 public class ResultBean {
 
     /**
-     * code describe status
+     * code describe status.
      */
     private Integer code;
 
     /**
-     * msg describe result
+     * msg describe result.
      */
     private String msg;
 
     /**
-     * result data
+     * result data.
      */
     private Object data;
 
diff --git 
a/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/controller/HttpTestController.java
 
b/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/controller/HttpTestController.java
index d29e91ed9..553de52d3 100644
--- 
a/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/controller/HttpTestController.java
+++ 
b/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/controller/HttpTestController.java
@@ -1,5 +1,3 @@
-package org.apache.shenyu.examples.springmvc.controller;
-
 /*
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with
@@ -17,6 +15,8 @@ package org.apache.shenyu.examples.springmvc.controller;
  * limitations under the License.
  */
 
+package org.apache.shenyu.examples.springmvc.controller;
+
 import java.util.HashMap;
 import java.util.Map;
 
diff --git 
a/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/controller/OrderController.java
 
b/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/controller/OrderController.java
index 4fc9ecbfb..aeb33652d 100644
--- 
a/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/controller/OrderController.java
+++ 
b/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/controller/OrderController.java
@@ -35,7 +35,7 @@ import org.springframework.web.bind.annotation.RestController;
  */
 @RestController
 @RequestMapping("/order")
-@ShenyuSpringMvcClient( "/order")
+@ShenyuSpringMvcClient("/order")
 public class OrderController {
 
     /**
@@ -60,7 +60,7 @@ public class OrderController {
     @GetMapping("/findById")
     @ShenyuSpringMvcClient("/findById")
     public OrderDTO findById(@RequestParam("id") final String id) {
-        return build(id,"hello world findById");
+        return build(id, "hello world findById");
     }
 
     /**
@@ -73,7 +73,7 @@ public class OrderController {
     @GetMapping("/path/{id}/{name}")
     @ShenyuSpringMvcClient("/path/**")
     public OrderDTO getPathVariable(@PathVariable("id") final String id, 
@PathVariable("name") final String name) {
-        return build(id,"hello world restful: " + name);
+        return build(id, "hello world restful: " + name);
     }
 
     /**
@@ -85,9 +85,14 @@ public class OrderController {
     @GetMapping("/path/{id}/name")
     @ShenyuSpringMvcClient("/path/**/name")
     public OrderDTO testRestFul(@PathVariable("id") final String id) {
-        return build(id,"hello world restful inline " + id);
+        return build(id, "hello world restful inline " + id);
     }
 
+    /**
+     * Test oauth2 request.
+     * @param request request with the oauth2 headers
+     * @return the oauth2 dto
+     */
     @GetMapping("/oauth2/test")
     @ShenyuSpringMvcClient("/oauth2/test")
     public OAuth2DTO testRestFul(final HttpServletRequest request) {
diff --git 
a/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/controller/UploadController.java
 
b/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/controller/UploadController.java
index ddc94cc74..a5ba7fd88 100644
--- 
a/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/controller/UploadController.java
+++ 
b/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/controller/UploadController.java
@@ -35,9 +35,9 @@ import java.util.stream.Collectors;
 public class UploadController {
 
     /**
-     * mvc uploadFile
-     * @param file
-     * @return
+     * mvc upload single file.
+     * @param file file.
+     * @return  response
      */
     @PostMapping(value = "/singleFile")
     public String singleFile(@RequestParam("file") final MultipartFile file) {
@@ -45,9 +45,9 @@ public class UploadController {
     }
 
     /**
-     * mvc uploadFiles
-     * @param files
-     * @return
+     * mvc upload multiple files.
+     * @param files files.
+     * @return  response
      */
     @PostMapping(value = "/files")
     public String files(@RequestParam("files") final MultipartFile[] files) {
diff --git 
a/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/dto/OAuth2DTO.java
 
b/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/dto/OAuth2DTO.java
index a5f216247..522c8941c 100644
--- 
a/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/dto/OAuth2DTO.java
+++ 
b/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/dto/OAuth2DTO.java
@@ -18,12 +18,12 @@
 package org.apache.shenyu.examples.springmvc.dto;
 
 /**
- * The type OAuth Authorization dto
+ * The type OAuth Authorization dto.
  */
 public class OAuth2DTO {
 
     /**
-     * oauth token
+     * oauth token.
      */
     private String token;
 
diff --git 
a/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/dto/UserDTO.java
 
b/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/dto/UserDTO.java
index a2361121f..3f0fb3241 100644
--- 
a/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/dto/UserDTO.java
+++ 
b/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/dto/UserDTO.java
@@ -25,12 +25,12 @@ import java.util.StringJoiner;
 public class UserDTO {
 
     /**
-     * user id
+     * user id.
      */
     private String userId;
 
     /**
-     * username
+     * username.
      */
     private String userName;
 
@@ -78,5 +78,4 @@ public class UserDTO {
                 .toString();
     }
 
-
 }
diff --git 
a/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/result/ResultBean.java
 
b/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/result/ResultBean.java
index 801729e2b..c4d7026b4 100644
--- 
a/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/result/ResultBean.java
+++ 
b/shenyu-examples/shenyu-examples-springmvc/src/main/java/org/apache/shenyu/examples/springmvc/result/ResultBean.java
@@ -23,17 +23,17 @@ package org.apache.shenyu.examples.springmvc.result;
 public class ResultBean {
 
     /**
-     * code describe status
+     * code describe status.
      */
     private Integer code;
 
     /**
-     * msg describe result
+     * msg describe result.
      */
     private String msg;
 
     /**
-     * result data
+     * result data.
      */
     private Object data;
 
diff --git 
a/shenyu-examples/shenyu-examples-tars/src/main/java/org/apache/shenyu/examples/tars/servant/testapp/HelloServant.java
 
b/shenyu-examples/shenyu-examples-tars/src/main/java/org/apache/shenyu/examples/tars/servant/testapp/HelloServant.java
index e5c104cdd..38d22eba3 100644
--- 
a/shenyu-examples/shenyu-examples-tars/src/main/java/org/apache/shenyu/examples/tars/servant/testapp/HelloServant.java
+++ 
b/shenyu-examples/shenyu-examples-tars/src/main/java/org/apache/shenyu/examples/tars/servant/testapp/HelloServant.java
@@ -27,8 +27,20 @@ import 
com.qq.tars.protocol.tars.annotation.TarsMethodParameter;
 @Servant
 public interface HelloServant {
 
+    /**
+     * Test hello for tar.
+     * @param no  a param with name no
+     * @param name  a param with name name
+     * @return result
+     */
     String hello(@TarsMethodParameter(name = "no") int no, 
@TarsMethodParameter(name = "name") String name);
 
+    /**
+     * Test hello int for tar.
+     * @param no  a param with name no
+     * @param name  a param with name name
+     * @return result
+     */
     int helloInt(@TarsMethodParameter(name = "no") int no, 
@TarsMethodParameter(name = "name") String name);
 
 }
diff --git 
a/shenyu-examples/shenyu-examples-tars/src/main/java/org/apache/shenyu/examples/tars/servant/testapp/OrderServant.java
 
b/shenyu-examples/shenyu-examples-tars/src/main/java/org/apache/shenyu/examples/tars/servant/testapp/OrderServant.java
index 3f0e4d225..d843d12ca 100644
--- 
a/shenyu-examples/shenyu-examples-tars/src/main/java/org/apache/shenyu/examples/tars/servant/testapp/OrderServant.java
+++ 
b/shenyu-examples/shenyu-examples-tars/src/main/java/org/apache/shenyu/examples/tars/servant/testapp/OrderServant.java
@@ -27,8 +27,20 @@ import 
com.qq.tars.protocol.tars.annotation.TarsMethodParameter;
 @Servant
 public interface OrderServant {
 
+    /**
+     * Test hello for tar.
+     * @param no  a param with name no
+     * @param name  a param with name name
+     * @return result
+     */
     String hello(@TarsMethodParameter(name = "no") int no, 
@TarsMethodParameter(name = "name") String name);
 
+    /**
+     * Test hello int for tar.
+     * @param no  a param with name no
+     * @param name  a param with name name
+     * @return result
+     */
     int helloInt(@TarsMethodParameter(name = "no") int no, 
@TarsMethodParameter(name = "name") String name);
 
 }
diff --git 
a/shenyu-examples/shenyu-examples-tars/src/main/java/org/apache/shenyu/examples/tars/servant/testapp/UserServant.java
 
b/shenyu-examples/shenyu-examples-tars/src/main/java/org/apache/shenyu/examples/tars/servant/testapp/UserServant.java
index 059d2b8b6..07c8c00b7 100644
--- 
a/shenyu-examples/shenyu-examples-tars/src/main/java/org/apache/shenyu/examples/tars/servant/testapp/UserServant.java
+++ 
b/shenyu-examples/shenyu-examples-tars/src/main/java/org/apache/shenyu/examples/tars/servant/testapp/UserServant.java
@@ -26,9 +26,21 @@ import 
com.qq.tars.protocol.tars.annotation.TarsMethodParameter;
 
 @Servant
 public interface UserServant {
-
+    
+    /**
+     * Test hello for tar.
+     * @param no  a param with name no
+     * @param name  a param with name name
+     * @return result
+     */
     String hello(@TarsMethodParameter(name = "no") int no, 
@TarsMethodParameter(name = "name") String name);
 
+    /**
+     * Test hello int for tar.
+     * @param no  a param with name no
+     * @param name  a param with name name
+     * @return result
+     */
     int helloInt(@TarsMethodParameter(name = "no") int no, 
@TarsMethodParameter(name = "name") String name);
 
 }
diff --git 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/TestAnnotationWebsocketApplication.java
 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/TestAnnotationWebsocketApplication.java
index b5a3bb4b2..f0d8f93ac 100644
--- 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/TestAnnotationWebsocketApplication.java
+++ 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/TestAnnotationWebsocketApplication.java
@@ -31,14 +31,17 @@ import java.util.Map;
 @SpringBootApplication
 public class TestAnnotationWebsocketApplication {
 
-    public static void main(String[] args) {
+    /**
+     * Main Entrance.
+     * @param args startup arguments
+     */
+    public static void main(final String[] args) {
         SpringApplication.run(TestAnnotationWebsocketApplication.class, args);
     }
 
     /**
      * Use map as simple cache.
-     *
-     * @return
+     * @return  session cache
      */
     @Bean
     public Map<String, WebSocketSession> onlineUserCache() {
diff --git 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/config/WebSocketConfig.java
 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/config/WebSocketConfig.java
index e481e2c3f..80c563cb3 100644
--- 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/config/WebSocketConfig.java
+++ 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/config/WebSocketConfig.java
@@ -29,8 +29,12 @@ import 
org.springframework.web.socket.server.standard.ServerEndpointExporter;
 @EnableWebSocket
 public class WebSocketConfig {
 
+    /**
+     * define a ServerEndpointExporter bean.
+     * @return ServerEndpointExporter
+     */
     @Bean
     public ServerEndpointExporter serverEndpoint() {
         return new ServerEndpointExporter();
     }
-}
\ No newline at end of file
+}
diff --git 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/service/SaveFile.java
 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/service/SaveFile.java
index 207863c33..f3b3e4023 100644
--- 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/service/SaveFile.java
+++ 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/service/SaveFile.java
@@ -21,5 +21,11 @@ import java.util.Map;
 
 public interface SaveFile {
 
-    boolean saveFileFromBytes(byte[] b, Map<String, Object> map);
+    /**
+     * according to the param to save files from content.
+     * @param content  content
+     * @param param  param
+     * @return success
+     */
+    boolean saveFileFromBytes(byte[] content, Map<String, Object> param);
 }
diff --git 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/ws/UpLoadController.java
 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/ws/UploadController.java
similarity index 81%
rename from 
shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/ws/UpLoadController.java
rename to 
shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/ws/UploadController.java
index 8258808b4..9b9cf458e 100644
--- 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/ws/UpLoadController.java
+++ 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/ws/UploadController.java
@@ -31,18 +31,23 @@ import javax.websocket.Session;
 import javax.websocket.server.ServerEndpoint;
 import java.io.File;
 import java.io.IOException;
-import java.util.concurrent.ConcurrentHashMap;
+import java.util.HashMap;
+import java.util.Map;
 
 @ShenyuSpringWebSocketClient("/upload")
 @ServerEndpoint("/upload")
 @Controller
-public class UpLoadController {
+public class UploadController {
 
-    private static final Logger LOG = 
LoggerFactory.getLogger(UpLoadController.class);
+    private static final Logger LOG = 
LoggerFactory.getLogger(UploadController.class);
 
     @Autowired
     private SaveFile saveFile;
 
+    /**
+     * connect successful.
+     * @param session session
+     */
     @OnOpen
     public void onOpen(final Session session) {
         LOG.info("connect successful");
@@ -50,7 +55,6 @@ public class UpLoadController {
 
     /**
      * connect close.
-     *
      * @param session used for verify
      */
     @OnClose
@@ -58,6 +62,11 @@ public class UpLoadController {
         LOG.info("connect1 closed");
     }
 
+    /**
+     * receive message.
+     * @param message  message content
+     * @param session  session
+     */
     @OnMessage
     public void onMessage(final String message, final Session session) {
         try {
@@ -67,13 +76,18 @@ public class UpLoadController {
         }
     }
 
+    /**
+     * receive message of bytes.
+     * @param message  message bytes
+     * @param session  session
+     */
     @OnMessage
     public void onMessage(final byte[] message, final Session session) {
         File file = (File) session.getUserProperties().get("file");
         try {
-            ConcurrentHashMap map = new ConcurrentHashMap<>();
-            map.put("file", file);
-            saveFile.saveFileFromBytes(message, map);
+            Map<String, Object> param = new HashMap<>(2);
+            param.put("file", file);
+            saveFile.saveFileFromBytes(message, param);
             session.getBasicRemote().sendText("ok");
         } catch (Exception e) {
             LOG.error("UpLoadController onMessage", e);
diff --git 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/ws/WsServerEndpoint.java
 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/ws/WsServerEndpoint.java
index 67270a5ee..1f90785c3 100644
--- 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/ws/WsServerEndpoint.java
+++ 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-annotation-websocket/src/main/java/org/apache/shenyu/examples/websocket/ws/WsServerEndpoint.java
@@ -27,10 +27,9 @@ import javax.websocket.OnMessage;
 import javax.websocket.OnOpen;
 import javax.websocket.Session;
 import javax.websocket.server.ServerEndpoint;
-import java.io.IOException;
 
 /**
- * WsServerEndpoint
+ * WsServerEndpoint.
  */
 @ShenyuSpringWebSocketClient("/myWs")
 @ServerEndpoint("/myWs")
@@ -41,31 +40,29 @@ public class WsServerEndpoint {
 
     /**
      * connect successful.
-     *
-     * @param session
+     * @param session session
      */
     @OnOpen
-    public void onOpen(Session session) {
+    public void onOpen(final Session session) {
         LOG.info("connect successful");
     }
 
     /**
      * connect close.
-     *
-     * @param session
+     * @param session session
      */
     @OnClose
-    public void onClose(Session session) {
+    public void onClose(final Session session) {
         LOG.info("connect closed");
     }
 
     /**
-     * received message
-     *
-     * @param text
+     * received message.
+     * @param text message
+     * @return response
      */
     @OnMessage
-    public String onMsg(String text) throws IOException {
+    public String onMsg(final String text) {
         return "server send message:" + text;
     }
-}
\ No newline at end of file
+}
diff --git 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/TestNativeWebsocketApplication.java
 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/TestNativeWebsocketApplication.java
index 82ca3cac1..acf5cdbc7 100644
--- 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/TestNativeWebsocketApplication.java
+++ 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/TestNativeWebsocketApplication.java
@@ -26,7 +26,11 @@ import 
org.springframework.boot.autoconfigure.SpringBootApplication;
 @SpringBootApplication
 public class TestNativeWebsocketApplication {
 
-    public static void main(String[] args) {
+    /**
+     * Main Entrance.
+     * @param args startup arguments
+     */
+    public static void main(final String[] args) {
         SpringApplication.run(TestNativeWebsocketApplication.class, args);
     }
 }
diff --git 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/config/WebSocketConfig.java
 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/config/WebSocketConfig.java
index 913fb038f..ccd4b73d3 100644
--- 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/config/WebSocketConfig.java
+++ 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/config/WebSocketConfig.java
@@ -37,13 +37,14 @@ public class WebSocketConfig implements WebSocketConfigurer 
{
 
     @Autowired
     private HttpAuthHandler httpAuthHandler;
+    
     @Autowired
     private WebSocketInterceptor myInterceptor;
 
     @Override
-    public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {
+    public void registerWebSocketHandlers(final WebSocketHandlerRegistry 
registry) {
         registry.addHandler(httpAuthHandler, "myWebSocket")
                 .addInterceptors(myInterceptor)
                 .setAllowedOrigins("*");
     }
-}
\ No newline at end of file
+}
diff --git 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/config/WsSessionManager.java
 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/config/WsSessionManager.java
index 6392fe80a..961fcd05f 100644
--- 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/config/WsSessionManager.java
+++ 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/config/WsSessionManager.java
@@ -30,40 +30,39 @@ import java.util.concurrent.ConcurrentHashMap;
  */
 @Slf4j
 public class WsSessionManager {
-
+    
     private static final Logger LOG = 
LoggerFactory.getLogger(WsSessionManager.class);
+    
     /**
      * save the connection session.
      */
-    private static ConcurrentHashMap<String, WebSocketSession> SESSION_POOL = 
new ConcurrentHashMap<>();
+    private static final ConcurrentHashMap<String, WebSocketSession> 
SESSION_POOL = new ConcurrentHashMap<>();
 
     /**
      * add session.
-     *
-     * @param key
+     * @param key key
+     * @param session session
      */
-    public static void add(String key, WebSocketSession session) {
-        // 添加 session
+    public static void add(final String key, final WebSocketSession session) {
+        log.info("add session: {}", key);
         SESSION_POOL.put(key, session);
     }
 
     /**
      * Deleting a session will return the deleted session.
-     *
-     * @param key
-     * @return
+     * @param key key
+     * @return the session just removed
      */
-    public static WebSocketSession remove(String key) {
-        // 删除 session
+    public static WebSocketSession remove(final String key) {
+        log.info("remove session: {}", key);
         return SESSION_POOL.remove(key);
     }
 
     /**
      * Delete and close the connection synchronously.
-     *
-     * @param key
+     * @param key key
      */
-    public static void removeAndClose(String key) {
+    public static void removeAndClose(final String key) {
         WebSocketSession session = remove(key);
         if (session != null) {
             try {
@@ -76,11 +75,10 @@ public class WsSessionManager {
 
     /**
      * Get session.
-     *
-     * @param key
-     * @return
+     * @param key key
+     * @return session
      */
-    public static WebSocketSession get(String key) {
+    public static WebSocketSession get(final String key) {
         return SESSION_POOL.get(key);
     }
-}
\ No newline at end of file
+}
diff --git 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/controller/TestHttpController.java
 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/controller/TestHttpController.java
index 870cd6bc5..e3f6a0b72 100644
--- 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/controller/TestHttpController.java
+++ 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/controller/TestHttpController.java
@@ -20,6 +20,10 @@ package org.apache.shenyu.examples.websocket.controller;
 import org.apache.shenyu.client.springmvc.annotation.ShenyuSpringMvcClient;
 import org.apache.shenyu.examples.common.aop.Log;
 import org.apache.shenyu.examples.websocket.config.WsSessionManager;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -40,22 +44,40 @@ import java.io.IOException;
 @ShenyuSpringMvcClient("/ws/**")
 public class TestHttpController {
 
+    private static final Logger LOG = 
LoggerFactory.getLogger(TestHttpController.class);
+    
+    /**
+     * Send message.
+     * @param token session key
+     * @param msg text-type message
+     * @return response
+     */
     @RequestMapping("/sendMsg")
     @Log
-    public @ResponseBody
-    Object sendMsg(String token, String msg) throws IOException {
+    @ResponseBody
+    public String sendMsg(final String token, final String msg) {
         WebSocketSession webSocketSession = WsSessionManager.get(token);
         if (webSocketSession == null) {
             return "User login has expired";
         }
-        webSocketSession.sendMessage(new TextMessage(msg));
+        try {
+            webSocketSession.sendMessage(new TextMessage(msg));
+        } catch (IOException e) {
+            LOG.error("throw exception when sending message.", e);
+        }
         return "Message sent successfully";
     }
 
+    /**
+     * Upload files.
+     * @param token session key
+     * @param file file
+     * @return response
+     */
     @PostMapping(value = "/upload")
     @Log
-    public @ResponseBody
-    Object file(String token, @RequestParam("file") final MultipartFile file) {
+    @ResponseBody
+    public String file(final String token, @RequestParam("file") final 
MultipartFile file) {
         try {
             WebSocketSession webSocketSession = WsSessionManager.get(token);
             if (webSocketSession == null) {
@@ -65,8 +87,8 @@ public class TestHttpController {
                 webSocketSession.sendMessage(new 
BinaryMessage(file.getBytes()));
             }
         } catch (Exception e) {
-
+            // ignore exception
         }
         return "ok";
     }
-}
\ No newline at end of file
+}
diff --git 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/handler/HttpAuthHandler.java
 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/handler/HttpAuthHandler.java
index 4b40c9d04..c3df5ff9f 100644
--- 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/handler/HttpAuthHandler.java
+++ 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/handler/HttpAuthHandler.java
@@ -37,11 +37,11 @@ public class HttpAuthHandler extends TextWebSocketHandler {
     /**
      * socket create a success event.
      *
-     * @param session
-     * @throws Exception
+     * @param session session
+     * @throws Exception exception
      */
     @Override
-    public void afterConnectionEstablished(WebSocketSession session) throws 
Exception {
+    public void afterConnectionEstablished(final WebSocketSession session) 
throws Exception {
         Object token = session.getAttributes().get("token");
         if (token != null) {
             // The user is successfully connected and put into the online user 
cache.
@@ -54,12 +54,12 @@ public class HttpAuthHandler extends TextWebSocketHandler {
     /**
      * Receive message events.
      *
-     * @param session
-     * @param message
-     * @throws Exception
+     * @param session session
+     * @param message message
+     * @throws Exception exception
      */
     @Override
-    protected void handleTextMessage(WebSocketSession session, TextMessage 
message) throws Exception {
+    protected void handleTextMessage(final WebSocketSession session, final 
TextMessage message) throws Exception {
         // Get the message from the client.
         String payload = message.getPayload();
         Object token = session.getAttributes().get("token");
@@ -70,12 +70,12 @@ public class HttpAuthHandler extends TextWebSocketHandler {
     /**
      * when socket disconnected.
      *
-     * @param session
-     * @param status
-     * @throws Exception
+     * @param session  session
+     * @param status  close status
+     * @throws Exception exception
      */
     @Override
-    public void afterConnectionClosed(WebSocketSession session, CloseStatus 
status) throws Exception {
+    public void afterConnectionClosed(final WebSocketSession session, final 
CloseStatus status) throws Exception {
         Object token = session.getAttributes().get("token");
         if (token != null) {
             // The user exits and removes the cache.
@@ -83,4 +83,4 @@ public class HttpAuthHandler extends TextWebSocketHandler {
         }
     }
 
-}
\ No newline at end of file
+}
diff --git 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/interceptor/WebSocketInterceptor.java
 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/interceptor/WebSocketInterceptor.java
index a20e8c4c4..f0a2b846e 100644
--- 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/interceptor/WebSocketInterceptor.java
+++ 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-native-websocket/src/main/java/org/apache/shenyu/examples/websocket/interceptor/WebSocketInterceptor.java
@@ -27,7 +27,6 @@ import org.springframework.stereotype.Component;
 import org.springframework.web.socket.WebSocketHandler;
 import org.springframework.web.socket.server.HandshakeInterceptor;
 
-import java.util.HashMap;
 import java.util.Map;
 
 /**
@@ -40,18 +39,20 @@ public class WebSocketInterceptor implements 
HandshakeInterceptor {
 
     /**
      * Before handshake.
-     *
-     * @param request
-     * @param response
-     * @param wsHandler
-     * @param attributes
-     * @return
-     * @throws Exception
+     * @param request request
+     * @param response response
+     * @param wsHandler websocketHandler
+     * @param attributes  attributes
+     * @return enable handshake
+     * @throws Exception exception
      */
     @Override
-    public boolean beforeHandshake(ServerHttpRequest request, 
ServerHttpResponse response, WebSocketHandler wsHandler, Map<String, Object> 
attributes) throws Exception {
+    public boolean beforeHandshake(final ServerHttpRequest request, 
+                                   final ServerHttpResponse response, 
+                                   final WebSocketHandler wsHandler, 
+                                   final Map<String, Object> attributes) 
throws Exception {
         LOG.info("Shake hands.");
-        HashMap<String, String> paramMap = 
HttpUtil.decodeParamMap(request.getURI().getQuery(), "utf-8");
+        Map<String, String> paramMap = 
HttpUtil.decodeParamMap(request.getURI().getQuery(), "utf-8");
         String uid = paramMap.get("token");
         if (StrUtil.isNotBlank(uid)) {
             attributes.put("token", uid);
@@ -64,15 +65,17 @@ public class WebSocketInterceptor implements 
HandshakeInterceptor {
 
     /**
      * After shaking hands.
-     *
-     * @param request
-     * @param response
-     * @param wsHandler
-     * @param exception
+     * @param request  request
+     * @param response  response
+     * @param wsHandler  websocketHandler
+     * @param exception  exception
      */
     @Override
-    public void afterHandshake(ServerHttpRequest request, ServerHttpResponse 
response, WebSocketHandler wsHandler, Exception exception) {
+    public void afterHandshake(final ServerHttpRequest request, 
+                               final ServerHttpResponse response, 
+                               final WebSocketHandler wsHandler, 
+                               final Exception exception) {
         LOG.info("Handshake complete");
     }
 
-}
\ No newline at end of file
+}
diff --git 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-reactive-websocket/src/main/java/org/apache/shenyu/examples/websocket/config/WebSocketConfiguration.java
 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-reactive-websocket/src/main/java/org/apache/shenyu/examples/websocket/config/WebSocketConfiguration.java
index d19387385..770595d15 100644
--- 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-reactive-websocket/src/main/java/org/apache/shenyu/examples/websocket/config/WebSocketConfiguration.java
+++ 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-reactive-websocket/src/main/java/org/apache/shenyu/examples/websocket/config/WebSocketConfiguration.java
@@ -54,8 +54,13 @@ public class WebSocketConfiguration {
         return mapping;
     }
 
+    /**
+     * define a websocket handler Mapping bean.
+     * @param uploadFileHandler  upload file handler
+     * @return  handlerMapping
+     */
     @Bean
-    public HandlerMapping websocketFileMapping(final UploadFileHandler 
uploadFileHandler){
+    public HandlerMapping websocketFileMapping(final UploadFileHandler 
uploadFileHandler) {
         final Map<String, WebSocketHandler> map = new HashMap<>(1);
         map.put("/websocket/upload", uploadFileHandler);
         final SimpleUrlHandlerMapping mapping = new SimpleUrlHandlerMapping();
@@ -66,7 +71,6 @@ public class WebSocketConfiguration {
 
     /**
      * Handler adapter web socket handler adapter.
-     *
      * @return the web socket handler adapter
      */
     @Bean
diff --git 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-reactive-websocket/src/main/java/org/apache/shenyu/examples/websocket/handler/UploadFileHandler.java
 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-reactive-websocket/src/main/java/org/apache/shenyu/examples/websocket/handler/UploadFileHandler.java
index 55c240e22..72e1b969a 100644
--- 
a/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-reactive-websocket/src/main/java/org/apache/shenyu/examples/websocket/handler/UploadFileHandler.java
+++ 
b/shenyu-examples/shenyu-examples-websocket/shenyu-example-spring-reactive-websocket/src/main/java/org/apache/shenyu/examples/websocket/handler/UploadFileHandler.java
@@ -24,11 +24,15 @@ import 
org.springframework.web.reactive.socket.WebSocketHandler;
 import org.springframework.web.reactive.socket.WebSocketSession;
 import reactor.core.publisher.Mono;
 
-
 @Component
 public class UploadFileHandler implements WebSocketHandler {
 
 
+    /**
+     * Handle by upload handler.
+     * @param session  session
+     * @return  void
+     */
     @Override
     @NonNull
     @Log
diff --git a/shenyu-integrated-test/pom.xml b/shenyu-integrated-test/pom.xml
index d30c74fb3..8396669b1 100644
--- a/shenyu-integrated-test/pom.xml
+++ b/shenyu-integrated-test/pom.xml
@@ -57,6 +57,7 @@
         <curator.version>4.0.1</curator.version>
         <apache.dubbo.version>2.7.15</apache.dubbo.version>
         
<spring-cloud-netflix-ribbon.version>2.2.10.RELEASE</spring-cloud-netflix-ribbon.version>
+        
<maven-checkstyle-plugin.version>3.1.0</maven-checkstyle-plugin.version>
     </properties>
 
     <dependencies>
@@ -119,6 +120,26 @@
                     <skipTests>true</skipTests>
                 </configuration>
             </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-checkstyle-plugin</artifactId>
+                <version>${maven-checkstyle-plugin.version}</version>
+                <configuration>
+                    
<configLocation>/../script/shenyu_checkstyle.xml</configLocation>
+                    
<headerLocation>/../script/checkstyle-header.txt</headerLocation>
+                    
<includeTestSourceDirectory>true</includeTestSourceDirectory>
+                    <excludes>**/transfer/**/*</excludes>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>validate</id>
+                        <phase>validate</phase>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
     </build>
 </project>

Reply via email to