IDEA搭建dubbo项目的过程及存在的问题

作者:Joshua 馮泰 时间:2023-10-15 17:56:53 

本人新手,有什么问题 还请指出来,大家一起学习进步,话不多说。
首先,搭建dubbo项目,要有三个工程。

它们分别是:

maven java工程 这个工程放model对象以及需要暴露的接口。
maven webapp工程 服务提供者。
maven webapp工程 服务消费者。

怎么创建maven java工程 我就不说了。需要注意的是在写完接口后需要打成jar包。

服务提供者所需要的依赖:


servlet的依赖
<dependency>
     <groupId>javax.servlet</groupId>
     <artifactId>servlet-api</artifactId>
     <version>2.5</version>
     <scope>provided</scope>
   </dependency>

spring的依赖
   <dependency>
     <groupId>org.springframework</groupId>
     <artifactId>spring-webmvc</artifactId>
     <version>4.3.16.RELEASE</version>
   </dependency>

spring的依赖
   <dependency>
     <groupId>org.springframework</groupId>
     <artifactId>spring-context</artifactId>
     <version>4.3.16.RELEASE</version>
   </dependency>

dubbo的依赖 需要跟dubbo版本对应
   <dependency>
     <groupId>com.alibaba</groupId>
     <artifactId>dubbo</artifactId>
     <version>2.6.2</version>
   </dependency>

接口工程的依赖
   <dependency>
     <groupId>com.fkh.dubbo</groupId>
     <artifactId>dubboApi</artifactId>
     <version>1.0.0</version>
   </dependency>

dubbo客户端依赖 dubbo版本在2.2以上需要curator依赖
   <dependency>
     <groupId>com.101tec</groupId>
     <artifactId>zkclient</artifactId>
     <version>0.10</version>
   </dependency>

zookeeper需要的依赖
   <dependency>
     <groupId>org.apache.zookeeper</groupId>
     <artifactId>zookeeper</artifactId>
     <version>3.4.14</version>
   </dependency>

dubbo客户端的依赖
   <dependency>
     <groupId>org.apache.curator</groupId>
     <artifactId>curator-framework</artifactId>
     <version>4.0.1</version>
     <type>bundle</type>
   </dependency>

dubbo客户端的依赖
   <dependency>
     <groupId>org.apache.curator</groupId>
     <artifactId>curator-recipes</artifactId>
     <version>4.0.1</version>
     <type>bundle</type>
   </dependency>

服务消费者需要的依赖:


<dependency>
     <groupId>javax.servlet</groupId>
     <artifactId>servlet-api</artifactId>
     <version>2.5</version>
   </dependency>
   <dependency>
     <groupId>org.springframework</groupId>
     <artifactId>spring-webmvc</artifactId>
     <version>4.3.16.RELEASE</version>
   </dependency>

<dependency>
     <groupId>org.springframework</groupId>
     <artifactId>spring-context</artifactId>
     <version>4.3.16.RELEASE</version>
   </dependency>

<dependency>
     <groupId>com.alibaba</groupId>
     <artifactId>dubbo</artifactId>
     <version>2.6.2</version>
   </dependency>

<dependency>
     <groupId>com.fkh.dubbo</groupId>
     <artifactId>dubboApi</artifactId>
     <version>1.0.0</version>
   </dependency>

<dependency>
     <groupId>org.apache.curator</groupId>
     <artifactId>curator-framework</artifactId>
     <version>4.0.1</version>
   </dependency>

<dependency>
     <groupId>org.apache.zookeeper</groupId>
     <artifactId>zookeeper</artifactId>
     <version>3.4.14</version>
   </dependency>

服务消费者xml配置:

IDEA搭建dubbo项目的过程及存在的问题

服务消费者控制器xml:

IDEA搭建dubbo项目的过程及存在的问题

服务提供者xml配置:

IDEA搭建dubbo项目的过程及存在的问题

整个过程中遇到的问题有:

1.在消费者web.xml中配置中央控制器DispatcherServlet的时候,有红色波浪线,这个意思是说 找不到对应的包。
解决方法是在pom文件中加入:


<dependency>
     <groupId>javax.servlet</groupId>
     <artifactId>servlet-api</artifactId>
     <version>2.5</version>
   </dependency>

zookeeper的依赖必须跟zookeeper版本一样。

jsp界面获取不到值的问题:

web.xml头部信息版本过低造成的,正确的是:


<?xml version="1.0" encoding="UTF-8"?>
<!--<!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 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">

启动顺序的问题:

一般我会先把接口工程打成jar包。
打开zookeeper注册中心,
然后启动服务提供者,
最后启动服务消费者。

总结

来源:https://blog.csdn.net/weixin_42687424/article/details/105534608

标签:idea,dubbo,项目
0
投稿

猜你喜欢

  • mybatis之如何获取表中某一列的最大值

    2022-03-26 08:38:53
  • 深入c# GDI+简单绘图的具体操作步骤(二)

    2022-01-31 12:43:49
  • spring cloud 阿波罗 apollo 本地开发环境搭建过程

    2023-01-25 21:04:50
  • 如何正确使用Android线程详解

    2021-12-06 19:24:30
  • 19款Javascript富文本网页编辑器

    2021-12-08 23:48:45
  • 非常实用的小功能 Android应用版本的更新实例

    2023-10-28 03:41:51
  • C#中的Linq Intersect与Except方法使用实例

    2021-11-30 01:25:52
  • C#中CheckedListBox控件的用法实例

    2021-08-05 06:03:29
  • 分析JAVA中几种常用的RPC框架

    2022-12-11 03:54:18
  • springmvc中下载中文文件名称为下划线的解决方案

    2023-11-25 22:28:53
  • 细谈java同步之JMM(Java Memory Model)

    2023-11-23 13:09:33
  • Java深入浅出掌握SpringBoot之MVC自动配置原理篇

    2022-04-16 02:14:34
  • SpringBoot之通过BeanPostProcessor动态注入ID生成器案例详解

    2023-11-24 22:17:26
  • 使用Spring组合自定义的注释 mscharhag操作

    2023-02-14 11:18:01
  • Java实现简易生产者消费者模型过程解析

    2023-12-03 01:33:26
  • C#在Winform开发中使用Grid++报表

    2022-04-20 03:57:13
  • Android实现recyclerview城市字母索引列表

    2023-09-28 04:22:06
  • Java加载资源文件时的路径问题的解决办法

    2023-05-09 23:22:40
  • Sentinel源码解析入口类和SlotChain构建过程详解

    2022-06-14 18:29:50
  • Android编程使用android-support-design实现MD风格对话框功能示例

    2022-05-19 03:46:39
  • asp之家 软件编程 m.aspxhome.com