springboot集成dubbo简单开发

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_36984017/article/details/83314931

一、接口项目(一个简单的maven项目即可,接口项目写好要install)

package com.dai.inter.service;

public interface UserService {
    public String say(String name);
}

二、服务提供者项目(写业务逻辑 实现接口),是一个springboot项目
pom.xml中加入dubbo依赖、zookeeper依赖、你自建的接口项目依赖:

	//dubbo依赖
    <dependency>
        <groupId>io.dubbo.springboot</groupId>
        <artifactId>spring-boot-starter-dubbo</artifactId>
        <version>1.0.0</version>
    </dependency>
    //连接zookeeper的依赖
    <dependency>
        <groupId>com.101tec</groupId>
        <artifactId>zkclient</artifactId>
        <version>0.10</version>
    </dependency>
    //自建的接口项目依赖
    <dependency>
        <groupId>com.dai</groupId>
        <artifactId>inter</artifactId>
        <version>0.0.1-SNAPSHOT</version>
    </dependency>

application.properties配置文件中配置zookeeper相关信息:

server.port=8081
#应用名字
spring.dubbo.application.name=provider
#连接zookeeper,用于写服务
spring.dubbo.registry.address=zookeeper://127.0.0.1:2181
#暴露的服务名字
#spring.dubbo.protocol.name=dubbo
##暴露的服务端口
#spring.dubbo.protocol.port=20880
#开启扫描路径(很重要,用于扫描dubbo注入)
spring.dubbo.scan=com.dai.provi.provi

实现接口项目的接口:

package com.dai.provi.provi.service.iml;

import com.alibaba.dubbo.config.annotation.Service;
import com.dai.inter.service.UserService;
import org.springframework.stereotype.Component;
//加入springboot容器中
@Component
//这是dubbo的注解
@Service(version = "1.0.0")
//实现接口项目的接口
public class K implements UserService {
    @Override
    public String say(String name) {
        return "你好"+name;
    }
}


三、开发服务消费者项目(用于得到服务提供者返回的信息进行处理)
同样和服务提供者项目一样加入dubbo依赖、zookeeper依赖、自建的接口项目依赖
在application.properties配置文件中配置:

server.port=8082
#应用名字
spring.dubbo.application.name=consu
#连接zookeeper,用于写服务
spring.dubbo.registry.address=zookeeper://127.0.0.1:2181
#暴露的服务名字
#spring.dubbo.protocol.name=dubbo
##暴露的服务端口
#spring.dubbo.protocol.port=20880
#开启扫描路径(扫描dubbo注入)
spring.dubbo.scan=com.dai.consu

随便在一个controller类中:

package com.dai.consu.controller;

import com.alibaba.dubbo.config.annotation.Reference;
import com.dai.inter.service.UserService;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class Sa {
	//这是dubbo注解
    @Reference(version = "1.0.0")
    //这个UserService是自建的接口项目类
    private UserService userService;

    @RequestMapping("/i")
    public Object q(){
        return userService.say("丽江");
    }
}

注意:安装zookeeper的时候,最好是jdk不要用默认安装路径安装,不然zookeeper找不到jdk会启动不了

1、启动zookeeper,看是不是默认的2181端口
2、启动服务提供者项目
3、启动服务消费者项目
访问“/i"会得到:你好,丽江

猜你喜欢

转载自blog.csdn.net/qq_36984017/article/details/83314931