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. UT源码+105032014018

    设计佣金问题的程序 commission方法是用来计算销售佣金的需求,手机配件的销售商,手机配件有耳机(headphone).手机壳(Mobile phone shell).手机贴膜(Cellphon ...

  2. servlet3.0 @webfilter 过滤顺序

    Servlet3.0之前Filter过滤的顺序是由用户在web.xml中配置的顺序决定的,如下会先执行encodingFilter,再执行filter1. <filter> <dis ...

  3. 洛谷 P1524 十字绣

    P1524 十字绣 题目背景 考古学家发现了一块布,布上做有针线活,叫做“十字绣”,即交替地在布的两面穿线. 题目描述 布是一个n*m的网格,线只能在网格的顶点处才能从布的一面穿到另一面.每一段线都覆 ...

  4. Qt之字体文件(TTF)

    简述 TTF(TrueTypeFont)是Apple公司和Microsoft公司共同推出的字体文件格式,随着windows的流行,已经变成最常用的一种字体文件表示方式. 在一些特殊的场合,系统字符集不 ...

  5. 页面头部带loading进度指示的jQuery滚动页面特效

    这是一款非常有用且效果非常酷的jQuery页面头部带loading进度指示的滚动页面特效. 该特效在页面滚动的时候页面头部有Loading进度条指示当前页面滚动的位置,这能够让用户知道当前阅读的地方距 ...

  6. poj_2777线段树+位运算

    第一次没想到用位运算,不出意料的T了,,, PS:在床上呆了接近两个月后,我胡汉三又杀回来刷题啦-- #include<iostream> #include<cstdio> # ...

  7. What's the difference between returning void and returning a Task?

    http://stackoverflow.com/questions/8043296/whats-the-difference-between-returning-void-and-returning ...

  8. Lists and strings

    A string is a sequence of characters and a list is a sequence of values, but a list of characters is ...

  9. 12.红黑树set

    #include <iostream> //红黑树(自动保证平衡,自动生成平衡查找树) #include <set> #include <cstring> #inc ...

  10. 设置和获取Android中各种音量

    通过程序获取android系统手机的铃声和音量.同样,设置铃声和音量的方法也很简单! AudioManager am = (AudioManager) getSystemService(Context ...