SpringCloud整合Eureka

1.新建Maven父工程Server
(1)導入依賴

<dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Dalston.SR5</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>javax.persistence</groupId>
            <artifactId>persistence-api</artifactId>
            <version>1.0</version>
        </dependency>
        <dependency>
            <artifactId>slf4j-api</artifactId>
            <groupId>org.slf4j</groupId>
            <version>1.7.10</version>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>1.2.3</version>
            <exclusions>
                <exclusion>
                    <artifactId>slf4j-api</artifactId>
                    <groupId>org.slf4j</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-core</artifactId>
            <version>1.2.3</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-config</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-eureka-server</artifactId>
        </dependency>
    </dependencies>

(2)創建啓動類

@SpringBootApplication
@EnableEurekaServer
public class ServerApplication {
    public static void main(String[] args){
        new SpringApplicationBuilder(ServerApplication.class).web(true).run(args);
    }
}

(3)創建application.yml

server:
  port: 8281
eureka:
  client:
    register-with-eureka: false #服務器不用註冊到其他服務器
    fetch-registry: false #服務器不用去服務器抓取註冊信息

(4)啓動項目運行,訪問http://localhost:8281
在這裏插入圖片描述

2.新建Spring子工程Provider
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
(1)新建控制類

@RestController
public class ProviderController {
    @RequestMapping(value = "/provider")
    public String provider(){
        return "==============provider==============";
    }
}

(2)新建application.yml

server:
  port: 8080
spring:
  application:
    name: provider1  #服務提供者名字
eureka:
  client:
    serviceUrl:
      defaultZone: http://localhost:8281/eureka/  #註冊到服務器

(3)啓動項目運行,訪問http://localhost:8281
在這裏插入圖片描述
3.新建spring子工程Consumer
(1)添加依賴

    <dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-ribbon</artifactId>
	</dependency>

(2)新建控制類

@Controller
@Configuration
public class ConsumerController {
    @Bean
    @LoadBalanced
    public RestTemplate getRestTemplate(){
        return new RestTemplate();
    }

    @RequestMapping(value = "/consumer")
    @ResponseBody
    public String call(){
        RestTemplate restTemplate = getRestTemplate();
        return restTemplate.getForObject("http://provider1/provider" ,String.class);
    }
}

(3)新建application.yml

server:
  port: 8081 #更改端口爲8081
spring:
  application:
    name: consumer1
eureka:
  client:
    serviceUrl:
      defaultZone: http://localhost:8761/eureka/  #註冊到服務器

(4)運行項目,訪問http://localhost:8081/consumer ,獲得返回結果
刷新http://localhost:8281/
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章