dubbo笔记(2)—— SpringBoot整合Dubbo

Dubbo微服务实践
本文详细介绍了如何在SpringBoot项目中使用Dubbo实现微服务架构,包括服务提供者和服务消费者的配置、接口定义与调用,以及依赖管理和Zookeeper注册中心的配置。

一、服务提供者部分

1、添加Dubbo依赖(注册中心使用的是zookeeper)

 <dependency>
       <groupId>com.alibaba.spring.boot</groupId>
       <artifactId>dubbo-spring-boot-starter</artifactId>
        <version>2.0.0</version>
  </dependency>
  <dependency>
        <groupId>com.101tec</groupId>
        <artifactId>zkclient</artifactId>
        <version>0.10</version>
   </dependency>

2、配置dubbo

在application.yml(或application.properties)中配置dubbo

spring:
application:
name: dubbo-provider
dubbo:
server: true
registry: zookeeper://192.168.1.100:2181 #注册中心是zookeeper
protocol:
name: dubbo
port: 20880 #用dubbo协议在20880端口暴露服务

3、编写SpringBoot启动类

@SpringBootApplication
@EnableDubboConfiguration  // 表示开启dubbo功能
public class UserApplication {

    public static void main(String[] args) {
        SpringApplication.run(UserApplication.class, args);
    }
}

4、编写服务提供者service接口及其实现类

public interface UserAPI {
    public int login(String username,String password);
}
@Component  // 将具体的实现类加入到Spring容器中
@Service(interfaceClass = UserAPI.class)  // 将该接口暴露到dubbo中
public class UserServiceImpl implements UserAPI {
    @Override
    public int login(String username, String password) {
        // ...
    }
}

 

一、服务消费者部分

1、添加Dubbo依赖,(同服务提供者部分)

2、在application.yml(或application.properties)中配置dubbo

spring:
  application:
    name: dubbo-consumer
  dubbo:
    server: true
    registry: zookeeper://192.168.1.100:2181

3、编写SpringBoot启动类(同服务提供者部分)

4、编写service,复制服务提供者service接口即可。(注意:包路径必须保持一致)

5、消费者调用服务接口

RestController
public class LoginController {

    @Reference(interfaceClass = UserAPI.class)
    private UserAPI userAPI;

    @RequestMapping(value = "login")
    public ResponseVO Login(User user) {        int userId = this.userAPI.login(user.getUserName(),user.getPassword());
        // ..
    }
}

 

转载于:https://www.cnblogs.com/tianzhebuzhu/p/10105133.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值