maven+springmvc+dubbo的简单配置
maven和springmvc基于注解的配置就不说了,在这里就说一下dubbo的配置
1、首先在porm文件中先引入dubbo的jar包
<dependencies> <dependency> <groupId>com.alibaba</groupId> <artifactId>dubbo</artifactId> <version>2.5.3</version> <exclusions> <exclusion> <groupId>org.springframework</groupId> <artifactId>spring</artifactId> </exclusion> </exclusions> </dependeny> </dependencies>
由于dubbo中引用spring版本过低,所以过滤掉dubbo中的spring部分引用
2、Springle解析dubbo定义的标签的时候会从jar包里指定位置寻找xsd定义,但是xsd未找到,所以会报错,但此问题不影响dubbo使用。
解决:配置文件所需dubbo.xsd 文件已经上传到附件
Eclipse下操作:windows->preferrence->xml->xmlcatalog
add->catalog entry ->file system 选择下载好的文件
修改key值和配置文件的http://code.alibabatech.com/schema/dubbo/dubbo.xsd 相同
3、服务方配置
<!-- 提供方应用信息,用于计算依赖关系 -->
<dubbo:application name="provider" />
<!-- 使用zookeeper注册中心暴露服务地址 -->
<dubbo:registry protocol="zookeeper"address="192.168.1.1:2111,192.168.1.2:2111" />
<!—监控中心地址 -->
<dubbo:monitor address="dubbo://192.168.1.1:5050/com.alibaba.dubbo.monitor.MonitorService" />
<!-- 用dubbo协议在20880端口暴露服务 -->
<dubbo:protocol name="dubbo" port="20880" />
<!-- 声明需要暴露的服务接口 -->
<dubbo:service interface="com.dubbo.service.DemoService"ref="demoService"/>
4、调用方配置
<!-- 消费方应用名,用于计算依赖关系,不是匹配条件,不要与提供方一样 -->
<dubbo:application name="consumer" />
<!-- 使用zookeeper注册中心暴露服务地址 -->
<dubbo:registry protocol="zookeeper"address="192.168.1.1:2111,192.168.1.2:2111" />
<!—监控中心地址 -->
<dubbo:monitoraddress="dubbo://192.168.1.1:5050/com.alibaba.dubbo.monitor.MonitorService" />
<!-- 生成远程服务代理,可以像使用本地bean一样使用demoService check 当有服务出现循环依赖的时候设置 -->
<dubbo:reference id="demoService" interface="com.dubbo.service.DemoService"/>
5、上述是基于远程的加zookeeper的配置,下面介绍一下本地的配置
服务方配置
<dubbo:registry address="127.0.0.1:9090" register="false" />
调用方配置
<dubbo:reference id="demoService" interface="com.dubbo.service.DemoService" check="false" url="127.0.0.1:20880"/>
6、除了这些配置外还可以进行分组和版本控制
在现有配置基础上添加group和version属性