栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

SpringBoot整合Dubbo+zookeeper(注册中心) 配置文件和注解方式

SpringBoot整合Dubbo+zookeeper(注册中心) 配置文件和注解方式

一,基于xml配置整合

准备好两个模块,一个product(生产者),一个customer(消费者)

1.导入Dubbo依赖
		
			com.alibaba.boot
			dubbo-spring-boot-starter
			0.2.0
		
2.再product模块中配置Dubbo属性



    

    

    



    
    
    
    


    
    
    



3.在customer模块配置


    
    
    
	
    
    


4.使用注解@Reference注入

注入后,customer模块就可以使用product模块实现的方法

@RestController
@RequestMapping("/user")
public class UserController {
    @Reference
    private userFacade userService;

    @operationLog(TargetName = "getUser",Kind = 1,Operation = "测试",module = ModuleType.operationalog)
    @RequestMapping("/getName")
    public void getUser(){
        String user = userService.getUser("李敏镐");
        System.out.println(user);
    }
}
二,基于注解整合Dubbo 1.配置product模块application.yml
dubbo:
#服务器名称唯一
  application:
    name: product
#注册中心配置,使用zookeeper做注册中心
  registry:
    address: zookeeper://127.0.0.1:2181
  protocol:
#    使用dubbo协议,端口默认20880
    port: 20880
    name: dubbo
  monitor:
    address: registry

注意yml文件格式

2.配置customer模块application.yml
#服务器名称唯一
  application:
    name: customer
#注册中心配置,使用zookeeper做注册中心
  registry:
    address: zookeeper://127.0.0.1:2181
#如果仅作为消费者,则不需要想生产者一样配置
3.两个模块都在启动类上开启Dubbo
@SpringBootApplication
@EnableDubbo
public class CustomerApplication {

	public static void main(String[] args) {
		SpringApplication.run(CustomerApplication.class, args);
		System.out.println("生产者启动成功");
	}
}
@SpringBootApplication
@EnableDubbo
public class CustomerApplication {

	public static void main(String[] args) {
		SpringApplication.run(CustomerApplication.class, args);
		System.out.println("消费者启动成功");
	}
}
4.使用@Reference注入
@RestController
@RequestMapping("/user")
public class UserController {
    @Reference
    private userFacade userService;

    @operationLog(TargetName = "getUser",Kind = 1,Operation = "测试",module = ModuleType.operationalog)
    @RequestMapping("/getName")
    public void getUser(){
        String user = userService.getUser("李敏镐");
        System.out.println(user);
    }
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/758438.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号