一、创建提供者03-provider-web

(1) 创建工程

创建Maven的web工程,然后创建实现类。

(2) 导入依赖

Spring的版本为4.3.16

需要的依赖有:

  • dubbo2.7.0版本依赖
  • zk客户端curator依赖
  • servlet与jsp依赖
  • spring相关依赖
  • spring需要的commons-logging依赖
  • 自定义00-api依赖

  1. <dependencies>
  2. <!-- zk客户端依赖:curator -->
  3. <dependency>
  4. <groupId>org.apache.curator</groupId>
  5. <artifactId>curator-recipes</artifactId>
  6. <version>2.13.0</version>
  7. </dependency>
  8. <dependency>
  9. <groupId>org.apache.curator</groupId>
  10. <artifactId>curator-framework</artifactId>
  11. <version>2.13.0</version>
  12. </dependency>
  13. <!-- dubbo依赖 -->
  14. <dependency>
  15. <groupId>org.apache.dubbo</groupId>
  16. <artifactId>dubbo</artifactId>
  17. <version>2.7.0</version>
  18. </dependency>
  19. <!-- Spring依赖 -->
  20. <dependency>
  21. <groupId>org.springframework</groupId>
  22. <artifactId>spring-beans</artifactId>
  23. <version>${spring-version}</version>
  24. </dependency>
  25. <dependency>
  26. <groupId>org.springframework</groupId>
  27. <artifactId>spring-core</artifactId>
  28. <version>${spring-version}</version>
  29. </dependency>
  30. <dependency>
  31. <groupId>org.springframework</groupId>
  32. <artifactId>spring-context</artifactId>
  33. <version>${spring-version}</version>
  34. </dependency>
  35. <dependency>
  36. <groupId>org.springframework</groupId>
  37. <artifactId>spring-expression</artifactId>
  38. <version>${spring-version}</version>
  39. </dependency>
  40. <dependency>
  41. <groupId>org.springframework</groupId>
  42. <artifactId>spring-aop</artifactId>
  43. <version>${spring-version}</version>
  44. </dependency>
  45. <dependency>
  46. <groupId>org.springframework</groupId>
  47. <artifactId>spring-aspects</artifactId>
  48. <version>${spring-version}</version>
  49. </dependency>
  50. <dependency>
  51. <groupId>org.springframework</groupId>
  52. <artifactId>spring-tx</artifactId>
  53. <version>${spring-version}</version>
  54. </dependency>
  55. <dependency>
  56. <groupId>org.springframework</groupId>
  57. <artifactId>spring-jdbc</artifactId>
  58. <version>${spring-version}</version>
  59. </dependency>
  60. <dependency>
  61. <groupId>org.springframework</groupId>
  62. <artifactId>spring-web</artifactId>
  63. <version>${spring-version}</version>
  64. </dependency>
  65. <dependency>
  66. <groupId>org.springframework</groupId>
  67. <artifactId>spring-webmvc</artifactId>
  68. <version>${spring-version}</version>
  69. </dependency>
  70. <!-- commons-logging依赖 -->
  71. <dependency>
  72. <groupId>commons-logging</groupId>
  73. <artifactId>commons-logging</artifactId>
  74. <version>1.2</version>
  75. </dependency>
  76. <!--业务接口工程依赖-->
  77. <dependency>
  78. <groupId>00-api</groupId>
  79. <artifactId>00-api</artifactId>
  80. <version>1.0-SNAPSHOT</version>
  81. </dependency>
  82. </dependencies>

(3) 定义web.xml


  1. <web-app>
  2. <!--注册Spring配置文件-->
  3. <context-param>
  4. <param-name>contextConfigLocation</param-name>
  5. <param-value>classpath:spring-*.xml</param-value>
  6. </context-param>
  7. <!--注册ServletContext监听器-->
  8. <listener>
  9. <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  10. </listener>
  11. </web-app>

(4) 修改spring-provider.xml

在src/main/resources目录下

二、创建消费者03-consumer-web

(1) 创建工程

创建Maven的web工程

(2) 导入依赖

与提供者工程中的依赖相同

(3) 定义处理器

(4) 定义欢迎页面

在src/main/webapp目录下定义欢迎页面

(5) 定义web.xml


  1. <!--字符编码过滤器-->
  2. <filter>
  3. <filter-name>CharacterEncodingFilter</filter-name>
  4. <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  5. <init-param>
  6. <param-name>encoding</param-name>
  7. <param-value>utf-8</param-value>
  8. </init-param>
  9. <init-param>
  10. <param-name>forceEncoding</param-name>
  11. <param-value>true</param-value>
  12. </init-param>
  13. </filter>
  14. <filter-mapping>
  15. <filter-name>CharacterEncodingFilter</filter-name>
  16. <url-pattern>/*</url-pattern>
  17. </filter-mapping>
  18. <!--注册中央调度器-->
  19. <servlet>
  20. <servlet-name>springmvc</servlet-name>
  21. <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  22. <init-param>
  23. <param-name>contextConfigLocation</param-name>
  24. <param-value>classpath:spring-*.xml</param-value>
  25. </init-param>
  26. <load-on-startup>1</load-on-startup>
  27. </servlet>
  28. <servlet-mapping>
  29. <servlet-name>springmvc</servlet-name>
  30. <!--不能写/*,不建议写/,建议扩展名方式-->
  31. <url-pattern>*.do</url-pattern>
  32. </servlet-mapping>

(6) 修改spring-consumer.xml

在src/main/resources目录下

三、部署

浏览器访问

后台消息

Dubbo应用到web工程的更多相关文章

  1. 使用Eclipse创建Maven Web工程

    方法/步骤 1 使用Eclipse创建Maven Web工程 2 找到Maven Project,点击Next 3 勾选上Create a simple project (不使用骨架),Next 4 ...

  2. web工程常用路径的获取方法

    此文章是基于 搭建SpringMVC+Spring+Hibernate平台 一. 利用 Spring 取得web工程根路径 1. web.xml 中添加如下: <context-param> ...

  3. 项目自动化建构工具gradle 入门5——在intellij中做一个gradle的web工程

    之前的几个小节,都是纯手工建文件夹,纯手工拷贝war包,或者纯手工解压个zip看看结果,,,,这还是我写了玩的helloWorld.若是玩大工程.几十个人的团队协同开发时,这么玩,,,,暴躁的程序员估 ...

  4. 在Web工程中引入Jquery插件报错解决方案

    在学习Jquery插件的时候,遇到一个问题就是新建web工程后在WebRoot下引入Jquery插件的时候报错,不知道为什么好纠结,但是项目能正常运行,后来找到解决方案,在这里给大家分享一下. 解决方 ...

  5. maven创建的Web工程,Eclipse 内 tomcat容器不识别的处理方法

    相信很多人都遇到这个问题,简单的说明下处理方式 前提是maven配置都是ok的,这里不多说了 1.创建web工程 mvn archetype:create -DgroupId=com.XXX.YYY ...

  6. Intellij Idea 14 使用jetty-maven-plugin配置运行web工程

    在项目中接触,虽然比较简单,也是经验的积累,web工程使用maven管理和构建,IDEA也是新接触的开发工具,用了一段时间,感觉so nice! 1:Run->Edit Configuratio ...

  7. 使用Spring Tool Suite创建Maven Web工程

    使用STS或者Eclipse这样的IDE创建Maven Web工程还真不是一般的麻烦! 看了网上不少的方法介绍,操作下来总有区别,不是这里不对就是那里不对. 下面是尝试了几次之后成功的方法,记录一下. ...

  8. Eclipse动态web工程(Dynamic Web Project)添加jar文件的正确方法

    Eclipse中,创建了动态web工程之后,如果需要添加新的jar文件,有两种方法.第一种是配置工程的“build path”,第二种则是将jar文件放在工程目录下的“/WebContent/WEB- ...

  9. 建立一套完整的Maven依赖工程步骤,包含WEB工程

    建立Java Web工程:File -> New -> other… -> Web -> Dynamic Web Project,abs-inf选中该工程右键 -> co ...

随机推荐

  1. 羽夏看Win系统内核——系统调用篇

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...

  2. 查看Git提交的代码统计

    1,提交Top5: git log --pretty='%aN' | sort | uniq -c | sort -k1 -n -r | head -n 5 2,某用户提交的代码统计 git log ...

  3. Part 21 to 22 AngularJS anchorscroll

    Part 21 AngularJS anchorscroll example $anchorscroll service is used to jump to a specified element ...

  4. 【从零开始学习Node.js】一.在CentOS 7中部署Node.js环境

    一.背景信息 Node.js是一个基于Chrome V8引擎的JavaScript运行环境,用来方便快速地搭建易于扩展的网络应用.Node.js使用了一个事件驱动.非阻塞式I/O的模型,使其轻量又高效 ...

  5. PAT A1063——set的常见用法详解

    set 常用函数实例 set是一个内部自动有序且不含重复元素的容器 (1)insert() (2)find()  st.find(*it) 找到返回其迭代器,否者返回st.end() (3)size( ...

  6. [hdu7076]ZYB's kingdom

    不难发现,操作1可以看作如下操作:对于删去$a_{1},a_{2},...,a_{k}$后的每一个连通块(的点集)$V$,令$\forall x\in V,x$的收益加上$s$(其中$s=\sum_{ ...

  7. Swift-技巧(八)CVPixelBuffer To CGImage

    摘要 Swift 中图像的表现形式不只是 Image,还有更加底层的方式,比如 CVPixelBuffer 像素缓存形式,那么像素缓存转换为可以在应用中展示的 CGImage,就要知道有哪些处理了. ...

  8. 【Tool】Node.js 安装

    Node.js 安装 2019-07-29  14:56:14  by冲冲 1. 说明 电脑使用node.js存在两种方式: ① 第一种,下载(.exe)到本地电脑,不需要安装,下载后点击 node. ...

  9. html+css第六篇-定位

    relative相对定位/定位偏移量 position:relative; 相对定位 a.不影响元素本身的特性: b.不使元素脱离文档流: c.如果没有定位偏移量,对元素本身没有任何影响: 定位元素位 ...

  10. 『学了就忘』Linux文件系统管理 — 59、使用fdisk命令进行手工分区

    目录 1.手工分区前提 (1)要有一块新的硬盘 (2)在虚拟机中添加一块新硬盘 2.手工分区 (1)查看Linux系统所有硬盘及分区 (2)手工分区:详细步骤 (3)保存手工分区 3.硬盘格式化 4. ...