一分钟入门一个不带注册中心的dubbo项目

不带注册中心的天气查询的dubbo入门项目

服务提供者开发思路

1、创建动态Web项目

2、导入jar包

  1. 导入dubbo框架依赖的jar包
  2. 导入网络通信依赖的jar包
  3. 导入动态代理依赖的jar包
  4. 导入spring容器依赖的jar

3、创建pojo对象,service接口,并实现接口,实现相关的业务逻辑

4、创建spring的配置文件

  1. 声明dubbo服务名称(dubbo:application)
  2. 声明协议(protocol:名称+端口20880)
  3. 暴露服务(dubbo:service:全路径名称+注册中心registry(为空N/A)+实现服务的类ref)
  4. 真正实现dubbo服务的类(bean:id+class)

5、spring加载

 

服务消费者开发思路

1、创建普通java项目

2、导入jar包

  1. 导入dubbo框架依赖的jar包
  2. 导入网络通信依赖的jar包
  3. 导入动态代理依赖的jar包
  4. 导入spring容器依赖的jar
  5. 在服务提供者项目导出jar(服务接口,实现类,pojo),在该项目导入jar

3、创建spring的配置文件

  1. 声明dubbo服务名称(dubbo:application)
  2. 引用服务(dubbo:reference:全路径接口+id+url(dubbo://localhost:8080)

4、创建测试类测试

 

项目开发思路实现

最下面还有我的项目代码,可以下载到此项目,jar在项目中

服务提供者

1、创建动态项目

一分钟入门一个不带注册中心的dubbo项目_第1张图片

2、导入jar包

3、创建pojo对象,service接口,并实现接口,实现相关的业务逻辑(具体信息自己定义)

一分钟入门一个不带注册中心的dubbo项目_第2张图片

4、创建与src同级的config资源文件,在其里面创建并配置context_provider.xml,配置个日记记录properties.xml

context_provider.xml配置如下



        
        
        
        
        
        
        
        
        
        
        
        

5、配置web.xml,加载spring容器



  DubboProvider
  
    index.html
    index.htm
    index.jsp
    default.html
    default.htm
    default.jsp
  
  
  
  
  	contextConfigLocation
  	classpath:context_provider.xml
  
  
  	org.springframework.web.context.ContextLoaderListener
  
  

6、将项目发布到tomcat,启动

7、项目结构图,及启动结果

一分钟入门一个不带注册中心的dubbo项目_第3张图片

 

服务消费者

1、创建普通java项目

一分钟入门一个不带注册中心的dubbo项目_第4张图片

2、导入jar包

先导出提供服务的jar包,在将服务jar与其他jar一起导入

一分钟入门一个不带注册中心的dubbo项目_第5张图片

3、创建与src同级的config资源文件,在其里面创建spring的配置文件,并配置


        
        
        
        
        
        

4、创建测试类,测试

package com.xue.test;

import org.springframework.context.support.ClassPathXmlApplicationContext;

import com.xue.pojo.Weather;
import com.xuexue.service.WeatherService;

/**
 * 负责测试dubbo项目是否搭建成功
 * @author xuexue
 *
 */
public class Test {
	public static void main(String[] args) {
		ClassPathXmlApplicationContext cxt = new ClassPathXmlApplicationContext("context_consumer.xml");
		WeatherService bean = (WeatherService) cxt.getBean("remoteWeatherService");
		Weather weather = bean.quertWeather("101010");
		System.out.println(weather);
	}

}

5、测试结果

一分钟入门一个不带注册中心的dubbo项目_第6张图片

 

 

项目下载地址:

https://pan.baidu.com/s/12YJ2J0DP3btSdnyYWRuqCA 提取码:031u

 

带注册中心的项目见博客 https://blog.csdn.net/qq_41055045/article/details/90244740

 

你可能感兴趣的:(Dubbo,JavaEE)