服务方的目录结构
依赖
spring的一些依赖,内置tomcat+dubbo+zookeeper的依赖
配置 web.xml
因为是war包所以需要再webapp下建立WEB-INF/web.xml
java文件
service接口和实现类(注解使用阿里提供的@service)
package org.students.server.impl;import org.students.server.StudentServer;import com.alibaba.dubbo.config.annotation.Service;@Service//阿里提供的public class StudentServerImpl implements StudentServer{public String server(String name) {return "server:" +name;}}
消费方依赖:跟上面服务方一样配置 web.xml
dubbo服务方要配,消费方也要配
<?xml version="1.0" encoding="UTF-8"?>
java类
service的接口 和controller
service的接口:跟服务方的service接口一样,要在controller中远程调用服务端中StudentServer 然后自动装配。
package org.students.server;public interface StudentServer {public String server(String name);//zs}
package org.controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;import org.students.server.StudentServer;import com.alibaba.dubbo.config.annotation.Reference;@RestController@RequestMapping("controller")public class StudentController {@Reference//调用远程服务中的StudentServer StudentServer stuServer ; @RequestMapping("rpcSerer")public String rpcSerer() {String result = stuServer.server("zs") ;return result ;//将结果显示在控制台}}
测试 消费方tomcat端口号为8803
访问http://localhost:8803/controller/rpcSerer.action