duboo的使用分析

技术duboo的使用分析今天就跟大家聊聊有关duboo的使用分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。一、背景随着互联网的发展,网站应用的规模不断扩大,常

今天就跟大家聊聊有关杜布的使用分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

一、背景

随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行。

当越来越的的接口与实现类的增加后,杜布的可扩展标记语言配置会越来越多,为了防止几百几千行的代码,减少开发人员配置可扩展标记语言的工作量,使用杜布的注解模式,减少配置多出问题多的可能性!

二、杜博使用案例

杜布注解

接口类项目:DubboServiceInterface

duboo的使用分析

仅仅是一个接口类项目!接口是普通接口!

duboo的使用分析

注意:将接口类项目打包成冲突分别放入服务端项目跟客户端项目!

服务端项目:DubboServiceProvider

duboo的使用分析

实现类fooserviceImpl.java

duboo的使用分析

包裹。阿里巴巴。杜博。演示。小鬼;

导入com。阿里巴巴。杜博。配置。注释。服务;

进口。com。阿里巴巴。杜博。演示。演示服务;

@Service(版本=’1.0 ‘)

公共类foowserviceimpl实现了DemoService {

@覆盖

公共字符串说你好(字符串名称){ 0

返回”你好”名称;

}

}

web.xml配置扫描内容

duboo的使用分析

?可扩展标记语言版本=’1.0 ‘编码=’UTF-8 ‘?

web-app xmlns : xsi=’ http://www。w3。org/2001/XMLSchema-实例’ xmlns=’ http://Java。星期日com/XML/ns/javaee ‘ xmlns : web=’ http://Java。星期日com/XML/ns/javaee/web-app _ 2 _ 5。xsd ‘ xsi : schema location=’ http://Java。星期日com/XML/ns/ns

显示名称dubboserviceprovider/显示名称

小型应用程序

servlet-name spring/servlet-name servlet-class org。弹簧框架。网络。servlet。dispatchersvlet/servlet类

启动时加载1/启动时加载

/servlet

小型应用程序映射

servlet-name spring/servlet-name

全球资源定位器(Uniform Resource Locator)模式*/url模式

/servlet-mappingnbs

p;

   <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

</listener>

    <context-param>

<param-name>contextConfigLocation</param-name> <param-value>classpath*:applicationContext.xml</param-value>

</context-param>

</web-app>

applicationContext.xml 配置

duboo的使用分析

<?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: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://code.alibabatech.com/schema/dubbo  

        http://code.alibabatech.com/schema/dubbo/dubbo.xsd">  

<!– 服务端- 服务提供方   –>

   <!– 公共信息,也可以用dubbo.properties配置 –>

   <dubbo:application name="test" />

<!–    链接zookeeper –>

   <dubbo:registry address="zookeeper://127.0.0.1:2181/" group="test"/>

   <dubbo:consumer timeout="5000"/>

   <!– 扫描注解包路径,多个包用逗号分隔,不填pacakge表示扫描当前ApplicationContext中所有的类 –>

<dubbo:annotation package="com.unj.dubbotest.serviceImp" /> 

<!– xml配置 : 声明需要暴露的服务接口 –>

<!–      <dubbo:service interface="com.alibaba.dubbo.demo.DemoService" ref="demoService" /> –>

    <!– xml配置 :和本地bean一样实现服务–>

<!–     <bean id="demoService" class="com.unj.dubbotest.serviceImp.FooServiceImpl" /> –>

</beans>

测试类Provider

 duboo的使用分析

package com.alibaba.dubbo.test;

import java.io.IOException;

import org.junit.Before;

import org.junit.Test;

import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Provider {

@Before

public void setUp() throws Exception {

}

@Test

public void testMain() throws IOException {

ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(

new String[] { "applicationContext.xml" });

context.start();

System.in.read();// 按任意键退出 

}

}

lib下的jar包

duboo的使用分析

客户端项目:DubboServiceConsumer

duboo的使用分析

web.xml 配置扫描内容

duboo的使用分析

applicationContext.xml文件

duboo的使用分析

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"  

xmlns:context="http://www.springframework.org/schema/context"

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 

    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://code.alibabatech.com/schema/dubbo  

        http://code.alibabatech.com/schema/dubbo/dubbo.xsd">  

<!– 客户端- 服务消费方   –>

   <!– 公共信息,也可以用dubbo.properties配置 –>

   <dubbo:application name="xx" />

   <dubbo:registry address="zookeeper://127.0.0.1:2181" />

   <dubbo:consumer timeout="5000"/>

 <!– 扫描注解包路径,多个包用逗号分隔,不填pacakge表示扫描当前ApplicationContext中所有的类 –>

    <dubbo:annotation package="com.unj.dubbotest.action" />

</beans>

测试类:Consumer

duboo的使用分析

package com.unj.dubbotest.action;

import java.io.IOException;

import org.junit.Test;

import org.springframework.context.support.ClassPathXmlApplicationContext;

import com.alibaba.dubbo.config.annotation.Reference;

import com.alibaba.dubbo.demo.DemoService;

public class Consumer{

@Reference(version = "1.0")

private DemoService demoService;

@Test

public  void mainTest() throws IOException {

ClassPathXmlApplicationContext context =new ClassPathXmlApplicationContext(

new String[] {"applicationContext.xml"}); 

       context.start(); 

        demoService = (DemoService)context.getBean("demoService"); // 获取远程服务代理 

       String hello = demoService.sayHello("world"); // 执行远程方法 

       System.out.println( hello ); // 显示调用结果 

   }

}

lib下的jar包

duboo的使用分析

看完上述内容,你们对duboo的使用分析有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/81173.html

(0)

相关推荐

  • .NET Framework SQL Server 数据怎样提供程序连接池

    技术.NET Framework SQL Server 数据怎样提供程序连接池.NET Framework SQL Server 数据怎样提供程序连接池,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家

    攻略 2021年11月29日
  • 真丝裙,真丝裙贱上水就有痕迹怎么办

    技术真丝裙,真丝裙贱上水就有痕迹怎么办真丝绸的一个特性就是局部沾水后容易形成水渍痕迹。这是真丝纤维本身亲水性太强、局部在沾水后真丝裙,纤维大分子沾到水的部位,水分子跟纤维上的亲水性基团比如羟基(-OH)、氨基(-NH)发

    生活 2021年10月30日
  • 10月29日 课堂笔记

    技术10月29日 课堂笔记 10月29日 课堂笔记29日笔记:
    Flex 布局:
    https://www.runoob.com/w3cnote/flex-grammar.htmltarget:targe

    礼包 2021年11月1日
  • 传输层协议与路由器

    技术传输层协议与路由器 传输层协议与路由器1、 TCP协议:
    面向连接的,可靠的进程到进程通信的协议
    TCP提供全双工服务
    2、UDP协议:
    无连接的不可靠的协议
    效率高
    3、TCP报文段U R G :

    礼包 2021年12月2日
  • wcf继承实体序列化怎么处理(wcf的完整形式是什么)

    技术WCF序列化是什么本篇内容介绍了“WCF序列化是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!近期看了大量关于W

    攻略 2021年12月14日
  • Python、Node.js和Java语言处理的开源工具有哪些

    技术Python、Node.js和Java语言处理的开源工具有哪些这篇文章主要介绍“Python、Node.js和Java语言处理的开源工具有哪些”,在日常操作中,相信很多人在Python、Node.js和Java语言处

    攻略 2021年11月4日