您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關(guān)Dubbox服務(wù)消費(fèi)方如何開(kāi)發(fā),可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
1、創(chuàng)建maven工程(打包方式為war)dubbodemo_consumer,pom.xml配置和上面服務(wù)提供者相同,只需要將Tomcat插件的端口號(hào)改為8082即可。
2、配置web.xml文件
~~~xml
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
<display-name>Archetype Created Web Application</display-name>
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!-- 指定加載的配置文件 ,通過(guò)參數(shù)contextConfigLocation加載 -->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext-web.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
</web-app>
~~~
3、將服務(wù)提供者工程中的HelloService接口復(fù)制到當(dāng)前工程
4、編寫(xiě)Controller
~~~java
package com.itheima.controller;
import com.alibaba.dubbo.config.annotation.Reference;
import com.itheima.service.HelloService;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
@RequestMapping("/demo")
public class HelloController {
@Reference
private HelloService helloService;
@RequestMapping("/hello")
@ResponseBody
public String getName(String name){
//遠(yuǎn)程調(diào)用
String result = helloService.sayHello(name);
System.out.println(result);
return result;
}
}
~~~
注意:Controller中注入HelloService使用的是Dubbo提供的@Reference注解
5、在src/main/resources下創(chuàng)建applicationContext-web.xml
~~~xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd
http://code.alibabatech.com/schema/dubbo
http://code.alibabatech.com/schema/dubbo/dubbo.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
<!-- 當(dāng)前應(yīng)用名稱(chēng),用于注冊(cè)中心計(jì)算應(yīng)用間依賴(lài)關(guān)系,注意:消費(fèi)者和提供者應(yīng)用名不要一樣 -->
<dubbo:application name="dubbodemo-consumer" />
<!-- 連接服務(wù)注冊(cè)中心zookeeper ip為zookeeper所在服務(wù)器的ip地址-->
<dubbo:registry address="zookeeper://192.168.134.129:2181"/>
<!-- 掃描的方式暴露接口 -->
<dubbo:annotation package="com.itheima.controller" />
</beans>
~~~
6、運(yùn)行測(cè)試
tomcat7:run啟動(dòng)
在瀏覽器輸入http://localhost:8082/demo/hello.do?name=Jack,查看瀏覽器輸出結(jié)果。
看完上述內(nèi)容,你們對(duì)Dubbox服務(wù)消費(fèi)方如何開(kāi)發(fā)有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。