在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
众所周知,。通过Dubbo可以创建服务消费方的应用,实现服务消费方远程调用服务提供方的方法。下面一起来看看Dubbox服务消费方开发详解,具体内容包括六个详细的开发步骤。
1、创建maven工程(打包方式为war)dubbodemo_consumer,pom.xml配置和上面服务提供者相同,只需要将Tomcat插件的端口号改为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>
<!-- 指定加载的配置文件 ,通过参数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、将服务提供者工程中的HelloService接口复制到当前工程
4、编写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){
//远程调用
String result = helloService.sayHello(name);
System.out.println(result);
return result;
}
}
~~~
注意:Controller中注入HelloService使用的是Dubbo提供的@Reference注解
5、在src/main/resources下创建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">
<!-- 当前应用名称,用于注册中心计算应用间依赖关系,注意:消费者和提供者应用名不要一样 -->
<dubbo:application name="dubbodemo-consumer" />
<!-- 连接服务注册中心zookeeper ip为zookeeper所在服务器的ip地址-->
<dubbo:registry address="zookeeper://192.168.134.129:2181"/>
<!-- 扫描的方式暴露接口 -->
<dubbo:annotation package="com.itheima.controller" />
</beans>
~~~
6、运行测试
tomcat7:run启动
在浏览器输入http://localhost:8082/demo/hello.do?name=Jack,查看浏览器输出结果。
以上就是Dubbox服务消费方开发详解的全部内容,大家都看懂了吗?如果想要学习更多有关Dubbox的内容,可以继续关注博学谷资讯Java栏目,我们将不定期更新学习资源~
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
JavaEE开发培训班的实战项目有哪些?
JavaEE开发培训班的课程除了传授必要的基础理论知识,还有各大企业JavaEE开发的案例讲解,由入门案例到详细工作原理及特性的解析,逐步深入。学员完成课程后JavaEE开发能力与行业接轨,可以轻松胜任企业高要求工作。那么JavaEE开发培训班的实战项目有哪些呢?
5832
2019-12-16 15:49:18
如何学Java语言从入门到精通
如何学Java语言从入门到精通?学编程一定要动手,遇到bug自己去查找解决方法,在学习过程中遇到麻烦,除了学会查找资料以外还要大胆提问,在解决问题的过程中才能更快的提升编程能力。
5325
2019-11-22 11:33:44
Java基础学习之File类笔记整理
在小白入门Java基础的学习道路上,File类是必须要接触的一个知识点。为了方便大家学习并应用File类,本文为大家整理汇总了File类的相关知识点,内容包括File类概述和构造方法、File类创建功能、File类判断和获取功能和File类删除功能。下面我们一起来梳理一遍笔记的内容吧!
4946
2019-12-11 16:25:25
怎样从0开始学好Java开发?
许多想要从事IT技术工作的朋友,在一开始都会把Java作为入门编程的首选语言。的确,Java作为久盛不衰的流行语言,一直一以来都备受程序开发者的青睐。那么,怎样从0开始学好Java开发呢?这里本文将推荐给大家免费的零基础入门Java开发的在线课程,一起来看看相关课程的介绍吧!
4692
2020-07-15 17:10:31
普通Java程序员工资应该在什么范围?
普通Java程序员工资应该在什么范围?2020年4月工资待遇名列前茅的城市依然是一线城市北京、上海、深圳。在所有软件开发类人才的需求中对Java程序员的需求达到全部需求量的60%~70%,Java程序员薪水相对较高。
3257
2022-04-22 13:34:49