`

dubbo rest 服务学习笔记(二)【原创】

阅读更多
采用dubbo客户端访问dubbo发布的rest服务,接上一篇。
1)启动类
package cn.gov.zjport.dubborest.test;

public class DemoConsumer {

public static void main(String[] args) {
    com.alibaba.dubbo.container.Main.main(args);
}

}
2)beans-consumer.xml
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://www.springframework.org/schema/beans" xmlns:aop="http://www.springframework.org/schema/aop"
	xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:cache="http://www.springframework.org/schema/cache" xmlns:p="http://www.springframework.org/schema/p"
	xsi:schemaLocation="http://www.springframework.org/schema/beans 
       http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
       http://www.springframework.org/schema/aop
       http://www.springframework.org/schema/aop/spring-aop-4.0.xsd
       http://www.springframework.org/schema/context
       http://www.springframework.org/schema/context/spring-context-4.0.xsd
       http://www.springframework.org/schema/tx
       http://www.springframework.org/schema/tx/spring-tx-4.0.xsd
       http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache-4.0.xsd">
	<!--service服务 -->
	<import resource="classpath:/test/spring/consumer/spring-business-service.xml" />
	<import resource="classpath:/test/spring/consumer/spring-dubbo-service.xml" />
</beans>

3.spring 配置文件:spring-business-service.xml
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://www.springframework.org/schema/beans" xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
    xmlns:cache="http://www.springframework.org/schema/cache" xmlns:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="http://www.springframework.org/schema/beans 
       http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
       http://www.springframework.org/schema/aop
       http://www.springframework.org/schema/aop/spring-aop-4.0.xsd
       http://www.springframework.org/schema/context
       http://www.springframework.org/schema/context/spring-context-4.0.xsd
       http://www.springframework.org/schema/tx
       http://www.springframework.org/schema/tx/spring-tx-4.0.xsd
       http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache-4.0.xsd">
	<bean class="cn.gov.zjport.dubborest.test.DemoStart" init-method="start">
		<property name="restDemoService" ref="restDemoService" />
	</bean>
</beans>

4.dubbo配置文件:spring-dubbo-service.xml
<?xml version="1.0" encoding="UTF-8"?>
<!--
 - Copyright 1999-2011 Alibaba Group.
 -  
 - Licensed under the Apache License, Version 2.0 (the "License");
 - you may not use this file except in compliance with the License.
 - You may obtain a copy of the License at
 -  
 -      http://www.apache.org/licenses/LICENSE-2.0
 -  
 - Unless required by applicable law or agreed to in writing, software
 - distributed under the License is distributed on an "AS IS" BASIS,
 - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 - See the License for the specific language governing permissions and
 - limitations under the License.
-->
<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-2.5.xsd
	http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd">

    <dubbo:application name="dubborest-test-consumer" owner="dubborest" organization="zjport"/>

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

    <!--uncomment this if you want to test dubbo's monitor-->
    <!--<dubbo:monitor protocol="registry"/>-->

    <dubbo:reference id="restDemoService" interface="cn.gov.zjport.dubborest.service.rest.RestDemoService"/>
</beans>

5. 客户端访问类:DemoStart
package cn.gov.zjport.dubborest.test;

import cn.gov.zjport.dubborest.pojo.User;
import cn.gov.zjport.dubborest.service.rest.RestDemoService;

public class DemoStart {

	private RestDemoService restDemoService;
	
	public void start(){
		System.out.println(restDemoService.search("zhenggm"));
		
		User user=new User();
		user.setId(1L);
		user.setName("zhengxl");
		System.out.println(restDemoService.post(user));
		System.out.println(restDemoService.get("zhangsan"));
	}

	public RestDemoService getRestDemoService() {
		return restDemoService;
	}

	public void setRestDemoService(RestDemoService restDemoService) {
		this.restDemoService = restDemoService;
	}
	
	
}

6. 运行 DemoConsumer
在run configuration 里设置 vm参数
-Ddubbo.spring.config=classpath:test/beans-consumer.xml
然后运行,就能打印出访问结果。
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    dubbo提供 rest 服务接口

    综上所述,Dubbo 提供的 REST 服务接口使得服务提供者能够以 RESTful 的方式暴露服务,极大地扩展了 Dubbo 的应用场景,使其在微服务架构中更加灵活。通过合理的配置和服务实现,我们可以轻松地在 Dubbo 系统中集成 ...

    dubbo rest rpc相关jar包

    在标题和描述中提到的“dubbo rest rpc相关jar包”是指Dubbo支持RESTful API调用的扩展模块,这使得Dubbo能够与更广泛的Web服务和微服务生态系统集成。 首先,我们来详细了解一下`dubbo-2.8.4.jar`。这是Dubbo的...

    基于dubbo的rest注册demo

    通过这个示例,开发者可以学习到如何在Dubbo环境中构建RESTful API,以及如何利用Dubbo的服务治理能力进行分布式服务调用。这不仅简化了跨语言调用的复杂性,也提升了系统的可扩展性和互操作性。

    dubbo学习笔记.pdf

    【Dubbo学习笔记】 Dubbo是一款高性能、轻量级的Java RPC框架,它旨在提供面向接口的远程方法调用、智能容错与负载均衡、服务自动注册与发现等核心功能,帮助开发者构建分布式服务架构。以下是对Dubbo基础知识、...

    dubbo学习笔记

    3. **自动发现**:Dubbo通过注册中心(如Zookeeper、Eureka等)实现服务提供者和消费者之间的动态服务发现,服务消费者无需硬编码服务提供者的地址,只需要知道服务接口,即可找到并调用服务。 【Dubbo能做什么】 ...

    Dubbo之《尚硅谷》学习笔记.md

    Dubbo之《尚硅谷》学习笔记

    dubbo学习例题代码资源

    - **协议(Protocol)**: 服务交互的通信协议,如Dubbo默认的dubbo协议,HTTP,REST等。 - **监控中心(Monitor)**: 统计服务的调用次数、调用时间、失败比例等,用于故障排查和性能优化。 2. **Zookeeper在...

    Dubbo 分布式服务架构

    Dubbo分布式服务架构,对于研究大型Web服务器的并发技术的同学们有帮助。

    dubbo学习笔记.doc

    dubbo学习笔记.doc

    dubbo项目开放rest接口并注册到eureka

    总的来说,这个项目旨在帮助开发者将传统的Dubbo服务与现代微服务架构融合,使得非Spring Cloud环境下的服务也能通过REST接口被Spring Cloud生态中的应用调用,同时利用Eureka实现服务的统一管理和发现。通过这种...

    dubbo学习文档汇总

    通过这些文档的学习,你将能够理解Dubbo如何实现服务间的透明调用,掌握如何利用Dubbo进行服务治理,以及如何根据项目需求进行服务拆分和框架扩展。同时,你也能够了解到在实际项目中如何优化网络通讯,提高系统的...

    Dubbo阅读笔记

    【Dubbo阅读笔记】 在深入理解Dubbo框架的过程中,我们首先需要了解其核心概念和服务模型。Dubbo是一款高性能、轻量级的Java RPC框架,它致力于简化分布式服务开发,为服务提供者(Provider)和服务消费者...

    dubbo:dubbo学习笔记

    《Dubbo学习笔记详解》 Dubbo,作为阿里巴巴开源的一款高性能、轻量级的服务治理框架,已经在Java开发者中广受欢迎。它主要应用于分布式系统中的服务调用,提供服务注册、服务发现、负载均衡、容错处理等核心功能,...

    基于zookeeper 监控dubbo provider 下线,提供dubbo 服务下线 邮箱预警

    `Dubbo` 是一款高性能、轻量级的Java服务框架,而`Zookeeper` 则是Apache的一个分布式协调服务,常用于服务治理、配置管理等领域。本项目结合两者,实现了一个针对`Dubbo`服务提供者(`Provider`)下线的监控系统,并...

    dubbo项目开放rest接口并注册到eureka--升级版

    例如,使用`@RestService`注解来标记服务类,这样`Dubbo`就会自动创建对应的`REST`服务。 ```java @Service(interface = DemoService.class) @RestService(path = "/demo") public class DemoServiceImpl ...

    MyDubbo:dubbo源码学习笔记

    《MyDubbo:Dubbo源码学习笔记》 在Java开发领域,Dubbo是一个非常知名的分布式服务框架,它由阿里巴巴开源并广泛应用于大型企业系统。本篇笔记将深入探讨Dubbo的核心概念、工作原理以及源码解析,帮助开发者更好地...

    dubbo拆分服务实例.rar

    本实例将深入探讨如何利用Dubbo进行服务的拆分,通过"用户服务"(dubbo-user)和"订单服务"(dubbo-order)两个具体的示例,揭示服务拆分的实施步骤和关键点。 1. 服务拆分原则 服务拆分的目标是提高系统的可扩展性...

    dubbo 分布式服务框架 开发者学习文档 PDF格式

    《Dubbo分布式服务框架开发者学习文档》是一份深入解析Dubbo技术体系的重要资料,它涵盖了Dubbo的核心功能和实现机制,对于理解并掌握这个流行的Java分布式服务框架具有极高的价值。Dubbo,作为阿里巴巴开源的一款高...

    dubbo入门学习框架源码

    通过深入学习和实践Dubbo源码,开发者不仅可以更好地理解Dubbo的工作原理,还能在实际项目中灵活运用,解决各种复杂的分布式服务问题。Dubbo的源码阅读也是一个不断提升自身技术深度的过程,有助于成长为更优秀的...

Global site tag (gtag.js) - Google Analytics