(1) 부모 프로젝트를 만듭니다
봄 부팅 2.1.7.RELEASE 그룹 위해서는, 이전에 설명한 봄의 클라우드 버전 Greenwich.SR2, 봄 구름 알리바바 버전 2.1.0.RELEASE. 후속이 버전은 그들을 반복하지를 참조하면된다.
치어
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.7.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.luas.cloud</groupId>
<artifactId>java-boot-parent-2.1</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>java-boot-parent-2.1</name>
<description>Spring Cloud Learning, parent project by spring boot 2.1.x</description>
<properties>
<java.version>1.8</java.version>
<hutool.version>4.6.13</hutool.version>
<spring-cloud.version>Greenwich.SR2</spring-cloud.version>
<spring-cloud-alibaba.version>2.1.0.RELEASE</spring-cloud-alibaba.version>
</properties>
<dependencies>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>${hutool.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>${spring-cloud-alibaba.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
</project>
이 제품 엔지니어링 만들기
치어
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.luas.cloud</groupId>
<artifactId>java-boot-parent-2.1</artifactId>
<version>1.0.0-SNAPSHOT</version>
<relativePath>../../java-boot-parent-2.1</relativePath>
</parent>
<groupId>com.luas.cloud</groupId>
<artifactId>xmall-product</artifactId>
<version>1.0.0-SNAPSHOT</version>
<name>xmall-product</name>
<description>Spring Cloud Learning,nacos-client</description>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- nacos cloud -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
참고 부모 프로젝트가 상위 프로젝트에 한 단계 특수를 지정하는 것이 좋습니다, relativepath를 특별한주의를 만든 것을, 당신은 제대로 언급하기 위해 부모 프로젝트에 받는다는 PW, 하위 프로젝트를 배포해야합니다.
응용 프로그램 구성
server:
port: 8080
spring:
application:
name: xmall-product
cloud:
nacos:
discovery:
server-addr: 127.0.0.1:8848
참고, 등록 nacos 후 xmall-제품 서비스 서비스 이름으로 spring.application.name, 서비스 이름은 체하다 후속 호출 또는 나머지가 호출을 통해 여부,이 이름이 필요합니다 매우 중요합니다.
제품 서비스
package com.luas.cloud.controller;
import cn.hutool.core.map.MapUtil;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/sku")
public class SkuController {
@RequestMapping("/{skuId}")
public Object get(@PathVariable("skuId") String skuId) {
return MapUtil.<String, Object>builder()
.put("skuId", skuId)
.put("name", "笔记本电脑")
.put("price", 1199.00)
.build();
}
}
시작 클래스
package com.luas.cloud;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class XmallProductApplication {
public static void main(String[] args) {
SpringApplication.run(XmallProductApplication.class, args);
}
}
@EnableDiscoveryClient 주석 여기에 대해 추가하지 않습니다,하지만 정상적인 서비스는 여전히 nacos에 등록 할 수 있었다. 무엇이 그것을 원인은? 코드의 두 가지가 이해 될 수있다 다음을 참조하십시오 :
이 논리 중요한 3은 오픈 구성 파라미터 여부가 자동으로 등록되고 모니터링된다에 의존하지 않는다.
서비스 Nacos 목록
열기 nacos 콘솔 액세스가 이미 목록에 발견, 등록에 성공!
상세보기 서비스 메타 데이터를 클릭 할 수 있습니다
액세스
방문에 http : // localhost를 : / SKU / 1000000 8080, 다음과 같은 결과를 표시해야합니다 :
근원
에 오신 것을 환영합니다 엄지 손가락
근원
GitHub의
https://gitee.com/xbd521/SpringCloudLearning
gitee
https://github.com/liuminglei/SpringCloudLearning
이 문서는 저자와 명백한 소스를 표시하시기 바랍니다 재발행을위한 문서의 [갤럭시] 원래 건축가입니다.
마이크로 채널 검색 [건축가] 갤럭시, 더 흥미로운 컨텐츠를 찾을 수 있습니다.