精华内容
下载资源
问答
  • 文章目录三、Spring Cloud的配置服务提供者 配置1、创建2、服务的提供者的相关配置2.1 pom依赖配置2.2 pom依赖的导入2.3 配置文件的引入2.4 创建Controller类2.4.1 创建文件夹2.4.2 创建HelloController类2.5 ...

    三、Spring Cloud的配置 之 服务提供者 配置

    1、创建

    首先我们在Java12SpringCloud下,创建个springboot 名字叫server-hello
    在这里插入图片描述

    2、服务的提供者的相关配置

    2.1 pom依赖配置

    首先需要继承父工程server-parent的依赖把图上所圈的放入server-hello中的pom文件下《parent》的标签里
    在这里插入图片描述
    这里我们把src下的test文件删除,把绿色的部分删除,为了更方便观看
    在这里插入图片描述

    2.2 pom依赖的导入

       <dependencies>
            <!--引入web服务器-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web-services</artifactId>
            </dependency>
            <!--引入eureka-client启动器-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
            </dependency>
        </dependencies>
    

    如图
    在这里插入图片描述

    2.3 配置文件的引入

    我们首先找到application.properties 这里我们我们选择的是 .poriperties

    #端口,会启动很多服务,但是端口不能一样
    server.port=8123
    #应用在服务注册中心的名字,服务之间相互调用就是使用这个名字实现的
    spring.application.name=server-hello
    #服务对外暴露的http地址,这个配置是其他的服务要调用时使用的地址
    #比如你开发了一个A服务,需要将A服务放到服务注册中心,你就需要使用该配置
    eureka.client.service-url.defaultZone=http://localhost:8000/eureka/
    

    在这里插入图片描述

    2.4 创建Controller类

    2.4.1 创建文件夹

    首先创建个文件夹名为 controller
    在这里插入图片描述

    2.4.2 创建HelloController类

    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    @RestController
    public class HelloController {
        @RequestMapping("hello")
        public String hello(){
            return "hello word";
        }
    }
    
    

    在这里插入图片描述

    2.5 主类上添加注解

    在springCloud D版本之后这个注解可以不写的,会自动添加注解,这里我们先写上

    @EnableEurekaClient
    

    在这里插入图片描述

    3、测试

    3.1 首先启动服务注册中心(server-eurg.springframework.web.bind.annotation.RequestMapping;

    import org.springframework.web.bind.annotation.RestController;@RestControllerpublic class HelloController { @RequestMapping(“hello”) public String hello(){ return “hello word”; }}![在这里插入图片描述](https://img-blog.csdnimg.cn/20200311230443230.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzczMTUzMg==,size_16,color_FFFFFF,t_70)### 2.5 主类上添加注解在springCloud D版本之后这个注解可以不写的,会自动添加注解,这里我们先写上java@EnableEurekaClient```在这里插入图片描述

    3、测试

    3.1 首先启动服务注册中心(server-eureka)

    在这里插入图片描述

    3.2 在启动server-hello服务

    在这里插入图片描述

    3.3 在在浏览器输入url地址来看看hello是否进来

    http://localhost:8000/
    

    在这里插入图片描述

    3.4 运行端口看看hello是否能够显示

    http://localhost:8123/hello
    

    在这里插入图片描述

    展开全文
  • 1、改造gmall-user作为服务提供者 1、引入dubbo 2、配置提供者,可以参考dubbo快速入门https://dubbo.apache.org/zh/docs/v2.7/user/quick-start/用Spring 配置声明暴露服务 3、启动服务,...

    4.4)、使用dubbo改造

    1、改造gmall-user作为服务提供者

    1、引入dubbo

    2、配置提供者,可以参考dubbo快速入门https://dubbo.apache.org/zh/docs/v2.7/user/quick-start/ 用Spring 配置声明暴露服务

    3、启动服务,https://dubbo.apache.org/zh/docs/v2.7/user/quick-start/

    运行main

     

    展开全文
  • 服务提供者环境搭建 项目创建 打开IDEA,创建 空的项目,项目命名为 ruoyi, 创建 module,模块名为:ruoyi-system .使用Spring.initizlizr创建,依赖先都不选,后面再手写依赖 引入依赖 <properties> <...

    服务提供者环境搭建

    项目创建

    1. 打开IDEA,创建 空的项目,项目命名为 ruoyi,
    2. 创建 module,模块名为:ruoyi-system .使用Spring.initizlizr创建,依赖先都不选,后面再手写依赖
    3. 引入依赖
    <properties>
            <spring-boot.version>2.1.1.RELEASE</spring-boot.version>
            <dubbo.version>2.6.5</dubbo.version>
        </properties>
    
        <dependencyManagement>
            <dependencies>
                <!-- Spring Boot -->
                <dependency>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-dependencies</artifactId>
                    <version>${spring-boot.version}</version>
                    <type>pom</type>
                    <scope>import</scope>
                </dependency>
    
                <!-- Dubbo dependencies -->
                <dependency>
                    <groupId>com.alibaba</groupId>
                    <artifactId>dubbo-dependencies-bom</artifactId>
                    <version>${dubbo.version}</version>
                    <type>pom</type>
                    <scope>import</scope>
                </dependency>
            </dependencies>
        </dependencyManagement>
    
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter</artifactId>
            </dependency>
            <!-- Dubbo Spring Boot Starter -->
            <dependency>
                <groupId>com.alibaba.boot</groupId>
                <artifactId>dubbo-spring-boot-starter</artifactId>
                <version>0.2.1.RELEASE</version>
            </dependency>
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>dubbo</artifactId>
                <version>${dubbo.version}</version>
            </dependency>
            <dependency>
                <groupId>io.netty</groupId>
                <artifactId>netty-all</artifactId>
            </dependency>
    
            <dependency>
                <groupId>org.apache.curator</groupId>
                <artifactId>curator-framework</artifactId>
                <version>2.12.0</version>
            </dependency>
    
    
        </dependencies>
    
        <build>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                </plugin>
            </plugins>
        </build>
    
        <repositories>
            <repository>
                <id>sonatype-nexus-snapshots</id>
                <url>https://oss.sonatype.org/content/repositories/snapshots</url>
                <releases>
                    <enabled>false</enabled>
                </releases>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
            </repository>
        </repositories>
    
    

    说明补充:
    ①、依赖来源参考了
    https://github.com/apache/dubbo-spring-boot-project/tree/0.2.x
    ②、参考的依赖不是很全,我自己补充了几个依赖。
    Ⅰ、spring-boot-starter ,项目中会使用到SpringBoot环境
    Ⅱ、curator-framework,zookeeper 客户端连接工具,需要注意的是,dubbo版本2.6之前使用的zookeeper客户端连接工具是

    			<dependency>
                    <groupId>com.101tec</groupId>
                    <artifactId>zkclient</artifactId>
                    <version>${zkclient.version}</version>
                </dependency>
    

    Ⅲ、如果默认的maven远程仓库,没有相应jar,可以使用 repository
    指定远程地址下载jar

    编写Service层接口、实现类

    package com.ruoyi.system.service;
    
    /**
     * @author liangcy
     * @create 2019/12/2 - 20:56
     */
    public interface DemoService {
        public String sayHello(String name);
    
    }
    
    
    package com.ruoyi.system.service.impl;
    
    import com.alibaba.dubbo.config.annotation.Service;
    import com.ruoyi.system.service.DemoService;
    import org.springframework.stereotype.Component;
    
    /**
     * @author liangcy
     * @create 2019/12/2 - 20:57
     */
    @Component
    @Service
    public class DemoServiceImpl implements DemoService {
    
        @Override
        public String sayHello(String name) {
            return "hell :" + name;
        }
    }
    
    

    补充说明:
    @Service 导入的是 阿里的Service,不是SpringBoot中的Service

    编写主程序类

    package com.ruoyi.system;
    
    import com.alibaba.dubbo.config.spring.context.annotation.EnableDubbo;
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
    
    @EnableAutoConfiguration
    @EnableDubbo
    public class SystemApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(SystemApplication.class, args);
        }
    
    }
    
    

    补充说明:
    @EnableDubbo :需要写
    @EnableAutoConfiguration:开启SpringBoot自动装配功能

    application.properties 主配置文件编写

    # 指定当前服务/应用的名字
    dubbo.application.name=ruoyi-admin
    # 指定注册中心位置
    dubbo.registry.address=zookeeper://192.168.3.120:2181
    # 指定通用规则(通信协议?通信端口)
    dubbo.protocol.name=dubbo
    dubbo.protocol.port=20880
    

    补充说明
    Ⅰ、zookeeper://192.168.3.120:2181 中的 2181 端口,是zookeeper默认的端口,在zookeeper安装路径的 conf/zoo.cfg 文件中有定义。

    执行main方法,发布服务

    在执行 main 方法之前,需要启动 确保 http://192.168.3.120:8080/dubbo 是能访问的,以及zookeeper服务是启动的。

    验证服务是否发布成功

    登录到 http://192.168.3.120:8080/dubbo 中,用户名密码都是 root
    发布成功截图
    在这里插入图片描述

    展开全文
  • 创建服务提供者和消费者,通过配置消费者调用服务提供者提供的服务 完成:第一遍 1.如何创建一个简单的服务提供者? 步骤一:创建Module 首先选中当前项目右键 ——》 New ——》Module ——》Spring Initializr ...

    创建服务提供者和消费者,通过配置消费者调用服务提供者提供的服务

    完成:第一遍

    1.如何创建一个简单的服务提供者?

    步骤一:创建Module
    首先选中当前项目右键

    ——》 New

    ——》Module

    ——》Spring Initializr

    ——》Module SDK :14

    ——》Next

    ——》Group:com.adbycool

    ——》Artifact:buildingservice

    ——》Java Version:选14

    ——》Next

    ——》左边点Web,右边勾选Spring Web

    ——》左边点Spring Cloud Discovery
    右边勾选Eureka Discovery Client

    ——》Next

    ——》Finish

    步骤二:把Module里pom.xml里版本改成外部pom.xml里设置的统一版本

    大项目的pom.xml里的这部分配置

        <groupId>com.adbycool</groupId>
        <artifactId>springcloudnewproject</artifactId>
        <packaging>pom</packaging>
        <version>1.0-SNAPSHOT</version>
    

    替换到module里的pom.xml这部分配置

    Module子项目里关于java.version配置可以注释掉,因为版本信息在副项目Module创建时版本信息已经添加

    这样就可以复用父类里的版本
    ——》点击Import Changes

    步骤三:首先打开启动类EurekaServerApplication.java
    在启动类名上加注解@EnableEurekaClient
    这个注解会把当前项目指定为EurekaClient项目
    ——》保存

    步骤四:需要写一个服务
    在src\main\java\com\adbycool\building\service\controller下写一个BuildingController

    BuildingController

    package com.itzhiya.building.service.controller;
    
    import com.itzhiya.common.Product;
    import org.springframework.web.bind.annotation.*;
    
    import java.util.ArrayList;
    import java.util.List;
    
    @RestController
    @RequestMapping("building")
    public class BuildingController {
    
        @GetMapping("message")
        public String show(){
            return "欢迎来到我的世界......";
        }
    }
    

    步骤五:配置application.yml属性文件

    server:
      port: 8002
    spring:
      application:
        name: buildingservice
    eureka:
      client:
        service-url:
          defaultZone: http://localhost:8001/eureka, 
    

    2.如何创建一个简单的消费者?

    步骤一:创建Module
    首先选中当前项目右键

    ——》 New

    ——》Module

    ——》Spring Initializr

    ——》Module SDK :14

    ——》Next

    ——》Group:com.adbycool

    ——》Artifact:buildingconsumer

    ——》Java Version:选14

    ——》Next

    ——》左边点Web,右边勾选Spring Web

    ——》Next

    ——》Finish

    步骤二:把Module里pom.xml里版本改成外部pom.xml里设置的统一版本

    大项目的pom.xml里的这部分配置

        <groupId>com.adbycool</groupId>
        <artifactId>springcloudnewproject</artifactId>
        <packaging>pom</packaging>
        <version>1.0-SNAPSHOT</version>
    

    替换到module里的pom.xml这部分配置

    Module子项目里关于java.version配置可以注释掉,因为版本信息在副项目Module创建时版本信息已经添加

    这样就可以复用父类里的版本
    ——》点击Import Changes

    步骤三:在src\main\java\com\itzhiya\building\consumer下新建BuildingController

    BuildingController

    package com.itzhiya.building.consumer;
    
    import com.itzhiya.common.Product;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    import org.springframework.web.client.RestTemplate;
    
    import java.util.List;
    
    @RestController
    @RequestMapping("building")
    public class BuildingController {
    
        private final String url = "http://localhost:8002/building/message";
    
        @GetMapping("message")
        public String show(){
            RestTemplate restTemplate = new RestTemplate();
           return restTemplate.getForObject(url, String.class);
        }
    }
    
    

    步骤四:在src\main\resources配置
    application.yml属性文件

    server:
      port: 8003
    spring:
      application:
        name: buildingconsumer
    
    

    启动SpringBoot
    url为:localhost:8003/building/message
    效果:通过配置自动调用了http://localhost:8002/building/message的服务

    展开全文
  • Dubbo服务提供者和消费者配置

    千次阅读 2017-05-17 09:18:41
    服务提供方及服务消费方的配置示例 provider xml version="1.0" encoding="UTF-8"?> xmlns=...
  • 服务提供者》这两篇分别讲解了配置中心和服务提供者,但是服务提供者使用的配置文件还是本地的,没有使用配置中心的配置文件。今天看看如何实现服务提供者使用配置中心的配置文件。 1、 新建项目sc-eureka-client-...
  • 本文章基于改dubbo系列前两篇文章中项目进行调整修改 ...一、服务提供者工程 (无配置文件信息) 1.1 pom.xml 同Dubbo(六)使用SpringBoot搭建dubbo服务提供者工程中对应文件 1.2 dubboConfi.
  • 服务提供者1.1 pom.xml依赖1.2 web.xml配置1.3 dubbo-provider.xml提供者配置1.4 编写服务接口及其实现类1.5 配置provider的tomcat服务器并启动2. Dubbo服务消费者(调用服务)2.1 pom.xml依赖2.2 web.xml配置2.3 ...
  • 一、服务提供者 1.导入依赖 会加载spring boot和dubbo所有的jar包,版本必须是0.2.0 <dependency> <groupId>com.alibaba.boot</groupId> <artifactId>dubbo-spring-boot-starter</...
  • springBoot 配置Dubbo 简单demo,其中provider服务既是服务者,又是消费者,client完全的的消费者,provider2完全的提供者 以一个简单demo展示SpringBoot加Dubbo 这里是demo的地址...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,429
精华内容 2,971
关键字:

服务提供者配置