From d9bc58b88ad636c0f5f27cd1ac0055afd0566918 Mon Sep 17 00:00:00 2001 From: lang Date: Mon, 15 Jan 2024 22:22:04 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0jmdns=20rpc=20=E7=A4=BA?= =?UTF-8?q?=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../demo7015-rpc_sml-jmdns/pom.xml | 45 +++++++++++++++++++ .../java/demo7015/protocol/UserModel.java | 13 ++++++ .../java/demo7015/protocol/UserService.java | 5 +++ .../src/main/java/demo7015/server/RpcApp.java | 9 ++++ .../server/controller/UserServiceImpl.java | 20 +++++++++ .../src/main/resources/app.yml | 12 +++++ .../src/test/java/demo7015/WebApp.java | 9 ++++ .../demo7015/controller/UserController.java | 23 ++++++++++ .../src/test/resources/app.yml | 12 +++++ 7.Solon-Remoting-Rpc/pom.xml | 1 + 10 files changed, 149 insertions(+) create mode 100644 7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/pom.xml create mode 100644 7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/java/demo7015/protocol/UserModel.java create mode 100644 7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/java/demo7015/protocol/UserService.java create mode 100644 7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/java/demo7015/server/RpcApp.java create mode 100644 7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/java/demo7015/server/controller/UserServiceImpl.java create mode 100644 7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/resources/app.yml create mode 100644 7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/test/java/demo7015/WebApp.java create mode 100644 7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/test/java/demo7015/controller/UserController.java create mode 100644 7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/test/resources/app.yml diff --git a/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/pom.xml b/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/pom.xml new file mode 100644 index 000000000..5717b3979 --- /dev/null +++ b/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/pom.xml @@ -0,0 +1,45 @@ + + + 4.0.0 + + org.noear + solon-parent + 2.6.5-SNAPSHOT + + + + demo7015 + demo7015-rpc_sml-jmdns + + + 8 + 8 + UTF-8 + + + + + org.noear + solon-rpc + + + + org.noear + solon.logging.simple + + + + org.noear + jmdns-solon-cloud-plugin + + + + org.projectlombok + lombok + provided + + + + \ No newline at end of file diff --git a/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/java/demo7015/protocol/UserModel.java b/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/java/demo7015/protocol/UserModel.java new file mode 100644 index 000000000..24894d896 --- /dev/null +++ b/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/java/demo7015/protocol/UserModel.java @@ -0,0 +1,13 @@ +package demo7015.protocol; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class UserModel implements Serializable { + private long id; + private String name; + private int sex; + private String label; +} diff --git a/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/java/demo7015/protocol/UserService.java b/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/java/demo7015/protocol/UserService.java new file mode 100644 index 000000000..f2490aefa --- /dev/null +++ b/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/java/demo7015/protocol/UserService.java @@ -0,0 +1,5 @@ +package demo7015.protocol; + +public interface UserService { + UserModel getUser(Integer userId); +} diff --git a/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/java/demo7015/server/RpcApp.java b/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/java/demo7015/server/RpcApp.java new file mode 100644 index 000000000..a73e41f4f --- /dev/null +++ b/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/java/demo7015/server/RpcApp.java @@ -0,0 +1,9 @@ +package demo7015.server; + +import org.noear.solon.Solon; + +public class RpcApp { + public static void main(String[] args) { + Solon.start(RpcApp.class, args); + } +} diff --git a/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/java/demo7015/server/controller/UserServiceImpl.java b/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/java/demo7015/server/controller/UserServiceImpl.java new file mode 100644 index 000000000..9f26d8e3e --- /dev/null +++ b/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/java/demo7015/server/controller/UserServiceImpl.java @@ -0,0 +1,20 @@ +package demo7015.server.controller; + +import demo7015.protocol.UserModel; +import demo7015.protocol.UserService; +import org.noear.solon.annotation.Mapping; +import org.noear.solon.annotation.Remoting; + +//开启bean的远程服务 +@Mapping("/user") +@Remoting +public class UserServiceImpl implements UserService { + @Override + public UserModel getUser(Integer userId) { + UserModel model = new UserModel(); + model.setId(userId); + model.setName("user-" + userId); + + return model; + } +} diff --git a/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/resources/app.yml b/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/resources/app.yml new file mode 100644 index 000000000..7a708ca6a --- /dev/null +++ b/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/main/resources/app.yml @@ -0,0 +1,12 @@ +server.port: 8080 + +solon.app: + name: demo_rpc + group: demo + +solon.logging.appender: + console: + level: INFO + +solon.cloud.jmdns: + server: localhost \ No newline at end of file diff --git a/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/test/java/demo7015/WebApp.java b/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/test/java/demo7015/WebApp.java new file mode 100644 index 000000000..0230ec44e --- /dev/null +++ b/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/test/java/demo7015/WebApp.java @@ -0,0 +1,9 @@ +package demo7015; + +import org.noear.solon.Solon; + +public class WebApp { + public static void main(String[] args) { + Solon.start(WebApp.class, args); + } +} diff --git a/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/test/java/demo7015/controller/UserController.java b/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/test/java/demo7015/controller/UserController.java new file mode 100644 index 000000000..c92824a40 --- /dev/null +++ b/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/test/java/demo7015/controller/UserController.java @@ -0,0 +1,23 @@ +package demo7015.controller; + +import demo7015.protocol.UserModel; +import demo7015.protocol.UserService; +import org.noear.nami.annotation.NamiClient; +import org.noear.solon.annotation.Controller; +import org.noear.solon.annotation.Mapping; + + +@Controller +public class UserController { + //使用负载(name 保持与供应服务名相同;path 保持与接口路径相同) + @NamiClient(name = "demo_rpc",path = "/user") + UserService userService; + + @Mapping("test") + public UserModel test() { + UserModel user = userService.getUser(12); + System.out.println(user); + + return user; + } +} diff --git a/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/test/resources/app.yml b/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/test/resources/app.yml new file mode 100644 index 000000000..e4407db80 --- /dev/null +++ b/7.Solon-Remoting-Rpc/demo7015-rpc_sml-jmdns/src/test/resources/app.yml @@ -0,0 +1,12 @@ +server.port: 8081 + +solon.app: + name: demo_client + group: demo + +solon.logging.appender: + console: + level: INFO + +solon.cloud.jmdns: + server: localhost \ No newline at end of file diff --git a/7.Solon-Remoting-Rpc/pom.xml b/7.Solon-Remoting-Rpc/pom.xml index 02f88ce92..4e6df3168 100644 --- a/7.Solon-Remoting-Rpc/pom.xml +++ b/7.Solon-Remoting-Rpc/pom.xml @@ -40,6 +40,7 @@ demo7014-rpc_dubbo3_sml demo7014-rpc_dubbo3_sml_zk + demo7015-rpc_sml-jmdns demo7021-feign demo7022-forest -- Gitee