pom:
        
          <dependency>
            <groupId>com.github.sgroschupf</groupId>
            <artifactId>zkclient</artifactId>
            <version>0.1</version>
          </dependency>
          <dependency>
            <groupId>org.apache.zookeeper</groupId>
            <artifactId>zookeeper</artifactId>
            <version>3.4.8</version>
            <type>pom</type>
          </dependency>
        <dependency>  
          <groupId>com.alibaba</groupId>  
          <artifactId>dubbo</artifactId>  
          <version>2.5.3</version>  
          <exclusions>  
           <exclusion>  <!--当在Maven中有包的冲突的时候,为解决包的冲突,我们可以在依赖中排除依赖-->
            <artifactId>spring</artifactId>  
            <groupId>org.springframework</groupId>  
           </exclusion>  
          </exclusions>  
        </dependency>  
 
服务提供者:
 
<?xml version="1.0" encoding="UTF-8"?>
 
    <!-- 提供方应用名称信息,这个相当于起一个名字,我们dubbo管理页面比较清晰是哪个应用暴露出来的 -->  
       <dubbo:application name="dubbo_provider"></dubbo:application>  
       <!-- 使用zookeeper注册中心暴露服务地址 -->    
       <dubbo:registry address="zookeeper://127.0.0.1:2181" check="false" subscribe="false" register=""></dubbo:registry>  
      <!-- 要暴露的服务接口 -->    
      <dubbo:service interface="com.jk.service.StuServiceInter" ref="stuService" />     
    <bean id="stuService" class="com.jk.service.StuServiceImp"></bean> 
     <!-- 用dubbo协议在20880端口暴露服务 -->  
    <!-- <dubbo:protocol name="dubbo" host="10.3.41.6" port="20880" /> --> 
    <dubbo:protocol name="dubbo" port="20880"/>       <!---------不加的话  会报错,报ip之类错误--------- --> 
 
  <!-- <dubbo:application name="dubbo-provider"/>
    <dubbo:registry protocol="zookeeper" address="127.0.0.1:2181" />
    <dubbo:protocol name="dubbo" port="4090" />
    <dubbo:monitor protocol="registry"/>
    <dubbo:annotation package="com.jk.test.imp" />
     <bean id="sayHello" class="com.jk.test.imp.SayHelloImpl"></bean> 
    <dubbo:service interface="com.jk.test.api.SayHello" ref="sayHello" timeout="10000" />  -->
</beans>
 
注意:
    
 
实现Serializable最重要的两个原因是:
    1、将对象的状态保存在存储媒体中以便可以在以后重新创建出完全相同的副本;
  2、按值将对象从一个应用程序域发送至另一个应用程序域。

   实现serializable接口的作用是就是可以把对象存到字节流,然后可以恢复。
        所以你想如果你的对象没实现序列化怎么才能进行网络传输呢,要网络传输就得转为字节流,
        所以在分布式应用中,你就得实现序列化,如果你不需要分布式应用,那就没那个必要实现序列化。 


暴露服务:
    1、通过阿里巴巴 编写的主方法 进行暴露
                

   public static void main(String[] args) {
                           com.alibaba.dubbo.container.Main.main(args);    //调用阿里的 主方法,它默认会加载 META-INF/spring/下的配置文件
                     }
    2、通过启动项目进行暴露
                
                        <?xml version="1.0" encoding="UTF-8"?>
                             <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
                                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                                xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
                                http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
                                <!-- spring 监听 -->
                                     <listener>
                                        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
                                  </listener>
                              <context-param>
                                <param-name>contextConfigLocation</param-name>
                        <param-value>

 classpath:spring-base.xml,  //加载注解扫描
                                    classpath:spring-common.xml,

 //数据库连接信息
                                    classpath:META-INF/spring/spring-dubbo.xml

   //加载暴露服务 xml
                    </param-value>
                  </context-param>  
                </web-app>
 
消费者:
    web.xml:
                        
 消费引用接口配置:
<?xml version="1.0" encoding="UTF-8"?>
    default-lazy-init="false" >
 
   <dubbo:application name="dubbo_consumer"></dubbo:application>
   <!-- 使用zookeeper注册中心暴露服务地址 -->  
   <dubbo:registry address="zookeeper://127.0.0.1:2181" check="false"></dubbo:registry> 
     <!-- 要引用的服务 -->  
   <dubbo:reference interface="com.jk.service.StuServiceInter" id="stuServiceImp"></dubbo:reference>
 
</beans>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

dubbo+zookeeper+springMVC +maven的更多相关文章

  1. Dubbo+Zookeeper+SpringMVC+Maven整合实现微服务项目

    互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,Dubbo是一个分布式服务框架,在这种情况下诞生的.现在核心业务抽取出来,作为独立的服务,使 ...

  2. dubbo & zookeeper & springMVC

    一.安装准备 1.环境简介 名称 版本 OS Mac OS X 10.11.5 JDK 1.8.0_51 dubbo 2.5.4 tomcat 8.0.35 Zookeeper 3.4.8 maven ...

  3. 精华【分布式、微服务、云架构、dubbo+zookeeper+springmvc+mybatis+shiro+redis】分布式大型互联网企业架构!

    平台简介 Jeesz是一个分布式的框架,提供项目模块化.服务化.热插拔的思想,高度封装安全性的Java EE快速开发平台. Jeesz本身集成Dubbo服务管控.Zookeeper注册中心.Redis ...

  4. 分布式架构真正适用于大型互联网项目的架构! dubbo+zookeeper+springmvc+mybatis+shiro+redis

     分类: 分布式技术(3)    目录(?)[+]   平台简介 Jeesz是一个分布式的框架,提供项目模块化.服务化.热插拔的思想,高度封装安全性的Java EE快速开发平台. Jeesz本身集成D ...

  5. dubbo+zookeeper+springmvc+mybatis+shiro+redis架构

    内容管理(CMS)系统,包括内容管理,栏目管理.站点管理.公共留言.文件管理.前端网站展示等功能: 在线办公(OA)系统,主要提供简单的流程实例. Jeesz提供了常用工具进行封装,包括日志工具.缓存 ...

  6. Dubbo+zookeeper+SpringMVC搭建最简单的分布式项目

    Dubbo 是什么 一款分布式服务框架 高性能和透明化的RPC远程服务调用方案 SOA服务治理方案 Dubbo 架构流程图 Provider:服务提供方 Consumer:服务消费者 Registry ...

  7. MAC环境下idea:maven+Spring+Dubbo+Zookeeper简单工程搭建

    : 一:安装软件:tomcatZookeeperDubbo+admin 二:工程: 总工程  API    Pom.xml:不用引用任何东西  Provider    Pom.xml:要denpend ...

  8. 搭建SpringBoot+dubbo+zookeeper+maven框架(二)

    上一篇文章是关于搭建SpringBoot+dubbo+zookeeper+maven框架的,但是里面的功能还不够完善,今天就日志管理方面做一些改善. 下了demo的网友可能会发现项目在启动时会有警告: ...

  9. 搭建SpringBoot+dubbo+zookeeper+maven框架(一)

    这几天项目还没来,所以就自己试着参考网上的一些资料,搭建了一个SpringBoot+dubbo+zookeeper+maven框架,网上参考的很多资料照着他们一步一步搭建,最后很多都运行不通,很是郁闷 ...

随机推荐

  1. java 模拟ajax上传图片

    1.maven 引入依赖 <!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpmime --> &l ...

  2. word中输入公式方案

    如何开启word公式模式:“Alt”+"=" 1. 如何输入矩阵: 使用&链接行元素,@进行换行,空格键进行转换 如输出: 先开启公式模式:“Alt”+"=&qu ...

  3. YUM安装MONGODB发生Error in PREIN scriptlet in rpm package mongodb-enterprise-server-4.0.2-1.el6.x86_64错误

    YUM安装MONGODB发生Error in PREIN scriptlet in rpm package mongodb-enterprise-server-4.0.2-1.el6.x86_64错误 ...

  4. linux下安装jdk跟tomcat

    文章参考    https://www.cnblogs.com/geekdc/p/5607100.html   Linux服务器安装jdk+tomcat https://baijiahao.baidu ...

  5. 记录python之递归函数

    函数move(n,a,b,c)的定义是将n个圆盘从a借助b移动到c. def move(n,a,b,c): if n==1: print a,'-->',c move (n-1,a,c,b) p ...

  6. python 退出程序的执行

    使用sys.exit()退出当前程序的执行 import sys if x==0: sys.exit()

  7. HDU 2782 The Worm Turns (DFS)

    Winston the Worm just woke up in a fresh rectangular patch of earth. The rectangular patch is divide ...

  8. 洛谷 P1572 计算分数

    P1572 计算分数 题目描述 Csh被老妈关在家里做分数计算题,但显然他不愿意坐这么多复杂的计算.况且在家门口还有Xxq在等着他去一起看电影.为了尽快地能去陪Xxq看电影,他把剩下的计算题交给了你, ...

  9. Linux环境安装phpredis扩展

    php訪问redis须要安装phpredis扩展.phpredis是用纯C语言写的. phpredis下载地址 https://github.com/phpredis/phpredis 最新的版本号是 ...

  10. 2015百度之星初赛2 1005 序列变换(LIS变形)

    LIS(非严格):首先我想到了LIS.然而总认为有点不正确:每一个数先减去它的下标.防止以下的情况发生:(转载) 3 增加序列是1,2,2,2,3,这样求上升子序列是3.也就是要改动2个,可是中间的两 ...