Dubbo:自测自拟项目搭建provider

然后导入相应的配置信息:

 先配置dubbo:

 

然后配置zookeeper:

下图可知:dubbo依赖已经默认携带下载了spring很多的包 

 

然后开始代码编程:

先定义一个接口:

 

然后写实现:

package com.test.service;

public interface UserService {
	void register(String name , String password);
	void login(String name,String password);

}

 

写好实现:

package com.test.service.impl;

import org.springframework.stereotype.Service;

import com.test.service.UserService;

/**
 * 不考虑dubbo的任何问题,正常开发
 * 只考虑spring管理的问题
 * spring容易管理服务对象
 * 1.bean标签管理
 * 2.注解管理
 * 		使用注解管理, 容易导包错误. Dubbo也提供了service注解. 但是dubbo的service注解
 *  	有代码冲突. 在大多数情况下. 和spring-context, spring-tx有冲突.
 *  	Dubbo的service注解, 在2.5.3版本中(使用spring2.5)注解无冲突
 * @author Administrator
 *
 */
@Service
public class UserServiceImpl implements UserService {

	public void register(String name, String password) {
		//可以写mapper 访问数据库 增加或查询等等的逻辑 我这里只是打印一下
		System.out.println("register方法运行:"+name +";"+password);
	}

	public void login(String name, String password) {
		System.out.println("login方法运行:"+name +";"+password);
	}

}

 

 

配置

配置文件:applicationContext-dubbo

1.先配文件头:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/mvc
        http://www.springframework.org/schema/mvc/spring-mvc.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context.xsd
        http://code.alibabatech.com/schema/dubbo
        http://code.alibabatech.com/schema/dubbo/dubbo.xsd">


</beans>

 

2.dubbo配置. Dubbo的配置信息,必须导入新的namespace. namespace可以通过dubbo的jar包查询.
配置文件的约束信息所在位置: dubbo.jar/META-INF/dubbo.xsd

 

添加dubbo.xsd,不添加可能就不会有相应的提示啊什么的:

头空间导入--dubbo命名空间定义: 

复制出来(注意上面的文件头中是添加过的):

 

 dubbo.xsd :

dubbo标签配置

dubbo.xsd就在你的dubbo.jar包里,解压后在路径里dubbo\META-INF就可以找到

配置参考:https://blog.csdn.net/dhq_blog/article/details/81123712

比如要配置 dubbo的registry  标签配置如下操作搜索:

标签类型里面包括的就是子标签和属性列表。

当然也可以看api查看这些配置。

 

配置启动类:

启动类代码,注意配置文件的位置,放到resource下面的新建的spring包里了,直接放resource下面扫面不到:

package com.testDubo.test;

import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Test {
	
	public static void main(String[] args) throws Exception {
		
		// 1. 创建spring容器. 并扫描配置文件. ClassPathXmlApplicationContext继承了Thread
		ClassPathXmlApplicationContext context = 
				new ClassPathXmlApplicationContext("classpath:spring/*.xml");
		
		System.out.println("Provider 正在启动...");
		
		// 2. 启动spring容器.
		context.start();
		
		System.out.println("provider 已启动...");
		
		// 3. 线程阻塞. 如果线程终止, 则服务端代码停止. 发布的服务失效.
		System.in.read();
		
	}

}

 

 

windows启动zookeeper,然后启动启动类,注册中心前后对比:

打开zkCli连接zookeeper,然后

执行 ls /dubbo

 

如上图,已注册成功

再执行:

ls /dubbo/com.testDubo.service.UserService/providers

 

dubbo%3A%2F%2F172.17.16.1%3A20880%2Fcom.testDubo.service.UserService%3Fanyhost%
Dtrue%26application%3Dtest-provider-001%26dubbo%3D2.5.7%26generic%3Dfalse%26int
rface%3Dcom.testDubo.service.UserService%26methods%3Dlogin%2Cregister%26pid%3D6
52%26side%3Dprovider%26timestamp%3D1543123080324

以上是做过编码了

解码仿照如下:

如 之前:

 

转换后:

所以现在可以知道zookeeper上的dubbo节点里注册了所有的调用地址以及接口详细信息。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值