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 0000000000000000000000000000000000000000..5717b397994d6c888b151506f98d4b4cfdb386ea --- /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 0000000000000000000000000000000000000000..24894d896753b8bc6904ae53dffbf958f4da96a5 --- /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 0000000000000000000000000000000000000000..f2490aefa6226e862559d78519086fbdef2d37c4 --- /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 0000000000000000000000000000000000000000..a73e41f4f5fc6bfc0c9131bae4b183f7e3f346c7 --- /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 0000000000000000000000000000000000000000..9f26d8e3e28de171ba91697f6c18958383de20d4 --- /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 0000000000000000000000000000000000000000..7a708ca6a80c5c37dca73b631b6b56c2bc4a73ab --- /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 0000000000000000000000000000000000000000..0230ec44e08aa2e372b6c98a47b09b0a2668ca14 --- /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 0000000000000000000000000000000000000000..c92824a40361d96447648c1159169065bbf59d39 --- /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 0000000000000000000000000000000000000000..e4407db8024314a65d4641fe4a6de2b466fb3ac6 --- /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 02f88ce927c08164a19a16e8123f95231ed5ec5f..4e6df3168e3032460aaa65a2c69750a042dd93ef 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