开发者社区> baphsqca3imha> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

基于 Zookeeper、Dubbo 构建互联网分布式基础架构(2)|学习笔记

简介: 快速学习基于 Zookeeper、Dubbo 构建互联网分布式基础架构(2)
+关注继续查看

开发者学堂课程【基于 Zookeeper、Dubbo 构建互联网分布式基础架构互联网基础架构演进(3)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/635/detail/10163


基于 Zookeeper、Dubbo 构建互联网分布式基础架构(2)

 

目录:

一. TestService

二. testweb

三. Testcontroller

四. Testserviceimpl

五. Apllicationcontext.xml

六. web 配置文件

七. 引入 dubbo

 

一.testService

Create by jackiechan on 2018/3/21/下午8:21

Publice interface testservice

此方法在此处没有任何意义,纯粹是为了演示拆分

@param name

@return

String getdata(string name);

注:做 controller 时一定需要 testservice 但在输入时却发现没有,原因是因为没有依赖,依赖要在本地仓库里寻找如果没有则再远程服务包寻找。

将 service 添加为依赖首先要放在本地仓库数据包里,添加成功后进行查看

 

二、testweb 包

xsi:schemaLocat ion="http://maven.apache.org/P0H/4.0.0http:maven,apache.org/maven-v4_0_0

<parent><artifac tId>testduboodemo</artifactId

<groupId>com.qianfeng</groupId>

<version>1.0</version>

</parent>

<modelVersion>4.0.0</modelVersion>

<artifactId>testweb</artifactId>

<name>testweb</name>

<urbhttp://maven.apache.org</url

<packaging>war</packaging>

<dependencies>

<dependency>

<groupId>junit</groupId>

<artifactId>junit</artifactId

<version>4.12</version>

<scope>test</scope>

</dependency>

<dependency>

<groupId>javax.servlet</groupId>

<artifactId>javax.servlet-api</artifactId>

<version>3.1.0</version>

cscope>provided</scope»

</dependency>

</dependencies>

 

三.testcontroller

import com.qianfeng.testduboo.TestService;

import org.springframework,web.bind.annotation.RequestMapping;

import org.springframework,wcb.bind.annotation.Restcontroller;
import javax,annotation,Resource;
Created by jackiechan on 2018/3/21/下午8:16
@RestController
public class TestController 
//这里声明一个service,service最终会变成一个 web 项目,也就是无法直接依赖,此处仍然需要声明对象.

//解决方式,我们将 service 的接口声明和实现进行拆分,将 service 创建为一个项目,jar包格式的项目.

//会用到service项目,serviceimpl 实现中也用到了这个接口
@Resource
private TestService service;
@Reques tMapping("/getData")
public string getData(String name) 
string data = service.getData(name);
return


四.testserviceimpl

import com.qianfeng.testduboo.TestService;

import org.spring framework.stereotype.Service;

@Service("testServiceImpl")

public class TestServiceImplt implements TestService 

@override
public string getData(String name ) 
return "你传递的数据是"+name ;

 

五.Apllicationcontext.xml

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

<beansxmlns="http://www,springframework,org/schema/beans"

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

xmlns:aop="http:(www.springframework.org/schema/aop"

xm Lns:dubbo-"http://code.alibabatech.com/schema/dubbo"

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

xsi:schemaLocation-"

<!扫描注解-->

<context:component-scanbase-package ="com,gianfeng"/>
<!--使用dubbo的另外一个原因,可以和spring无缝整合-->
<!--目的:
找到注册中心,告诉它我是谁,我的端口是多少
<!--配置别名,目的是在后台可以看到这个服务的别名,好区分到底是谁,这个参数可以随便写,但是最好是通俗易懂-->dubbo:application name="test1"/>
<!--2配置注册中心
address 注册中心的地址,protocol 指的是注册中心的协议格式<dubbo:registry.address="192.168.3.224:2181" .protocol="zookeeper"/>

interface 代表的就是类型
ref代表的就是到底具体发布哪个服务 timeout 连接超时时间
<dubbo:service interface="com.gianfeng.testduboo.TestService"ref="* imeoute"6000" />

</beans>


六.web 配置文件

<web-app xmlns-"http://xmlns.jcp.org/xml/ns/javaee"

xmlns:xsi="http:1/www3.org/2001/XMLSchema-instance"

xSi:schemaLocation-"http://xmlns.jcp.org/xml/ns/javaee

http://xmlns.jcp.org/xml/ns/javaee/web-app_31.xsd"

version-"3.1"

metadata-complete-"true",

<context-param>

<param-name>contextConfigLocaton</param-name>

<param-value>claspath:ApplicationContext.xml</param-value>

</context-param>

<listener>

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

</web-app>

 

七.引入 dubbo

<dependency>
<groupId>com.alibaba</groupId>
<artifactId>dubbo</artifactId>
<version>2.5.9</version>
<exclusions>
<exclusion>
<groupId>org,springframework</groupId»<artifactId>spring</artifactId>
</exclusion>​​

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Spring Boot + Dubbo + Zookpeer分布式案例
Spring Boot + Dubbo + Zookpeer分布式案例
0 0
关于在dubbo分布式种实体类Bean序列化产生的问题和内部类序列化的问题 UserServiceImpl must implement java.io.Serializable
今天在学习RPC dubbo的分布式 在跟老师学习的过程中,产生一个运行时报错,首先看项目结构和关键代码
0 0
基于 Zookeeper、Dubbo 构建互联网分布式基础架构(4)|学习笔记
快速学习基于 Zookeeper、Dubbo 构建互联网分布式基础架构(4)
0 0
基于 Zookeeper、Dubbo 构建互联网分布式基础架构(1)|学习笔记
快速学习基于 Zookeeper、Dubbo 构建互联网分布式基础架构(1),使用分布式需要一个注册中心,一个监控中心。原来是将一个项目跑到一些集群上面,而分布式是将一个大的项目分别拆开为多个模块,让其跑到不同的服务器上面,这叫做分布式。
0 0
《Dubbo 如何成为连接各种异构微服务体系的服务开发框架》电子版地址
Dubbo 如何成为连接各种异构微服务体系的服务开发框架
0 0
文章
问答
来源圈子
更多
技术图谱:由专家组参与技术图谱的绘制与编写,知识与实践的结合让开发者们掌握学习路线与逻辑,快速提升技能 电子书:电子书由阿里内外专家打造,供开发者们下载学习,更与课程相结合,使用户更易理解掌握课程内容 训练营:学习训练营 深入浅出,专家授课,带领开发者们快速上云 精品课程:汇集知识碎片,解决技术难题,体系化学习场景,深入浅出,易于理解 技能自测:提供免费测试,摸底自查 体验实验室:学完即练,云资源免费使用
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
What's new in Dubbo 2.7.6
立即下载
What's new in Dubbo 2.7.6
立即下载
What's new in Dubbo 2.7.6
立即下载