dubbo learning - day 2
来源:互联网 发布:java防止xss攻击代码 编辑:程序博客网 时间:2024/05/16 12:44
dubbo learning day2
- for what purpose?
- how to achieve?
- simple implementation.
业务场景描述
假设我们需要构建一个sayHello的服务,这个服务只需要简单的输出“hello!”。
按照常规的设计思路,我们会为这个服务设计一个接口HelloService ,和一个实现类HelloServiceImpl。
eg.
interface HelloService : sayHello()
class HelloServiceImpl : sayHello(){ print “hello!”}
普通服务调用过程
HelloService helloService = new HelloServiceImpl();
helloService.sayHello();RMI方式服务调用过程
2.1 服务端实现
package example.hello; import java.rmi.registry.Registry;import java.rmi.registry.LocateRegistry;import java.rmi.RemoteException;import java.rmi.server.UnicastRemoteObject; public class Server implements HelloService { public Server() {} public String sayHello() { return "Hello!"; } public static void main(String args[]) { try { Server obj = new Server(); Hello stub = (Hello) UnicastRemoteObject.exportObject(obj, 0); // Bind the remote object's stub in the registry Registry registry = LocateRegistry.getRegistry(); registry.bind("Hello", stub); System.err.println("Server ready"); } catch (Exception e) { System.err.println("Server exception: " + e.toString()); e.printStackTrace(); } }}
2.2 客户端实现
package example.hello;import java.rmi.registry.LocateRegistry;import java.rmi.registry.Registry;public class Client { private Client() {} public static void main(String[] args) { String host = (args.length < 1) ? null : args[0]; try { Registry registry = LocateRegistry.getRegistry(host); Hello stub = (Hello) registry.lookup("Hello"); String response = stub.sayHello(); System.out.println("response: " + response); } catch (Exception e) { System.err.println("Client exception: " + e.toString()); e.printStackTrace(); } }}
参考资料
1. RMI. http://docs.oracle.com/javase/6/docs/technotes/guides/rmi/hello/hello-world.html
0 0
- dubbo learning - day 2
- dubbo learning- day 1
- Unity Learning for Day 2
- Minigame Learning for Day 2
- dubbo learning
- Learning VIM (DAY 1)
- Learning Golang Day 1
- First Day of Learning J2EE
- The first day learning JAVA
- JS learning notes, day 1
- loadrunner Fast learning First Day
- tinyos learning on day 3
- loadrunner Fast learning Second Day
- python learning (day 1)
- Unity Learning for Day 3
- Unity Learning for Day 5
- Unity Learning for Day 6
- Unity Learning for Day 9
- 习题6-12 筛子难题 UVa810
- 【Best Coder】#36 C tree
- SDKD TeamContest A-E - 1005
- 删除星号字符
- HDU P5200 Trees
- dubbo learning - day 2
- javascript-this对象指代
- hibernate的ManyToOne的单向关联
- 算法学习之路-交换排序
- 第五章 语句
- 物联网rfid第一次作业(2015.3.23)
- 设计模式之--Factory模式
- Activity的生命周期(一)
- 关于Spring MVC Interceptor的设置顺序