Spring Cloud Eureka 快速建立Client和Server

    以前開發一直使用eclipseIDE,但微服務框架這塊用起來卻不甚理想,沒有那麼智能了,並且感受出錯的概率很大(掉進坑裏很久才爬出來的)。後來用起了IDEA來進行開發,不得不感嘆:高效、智能啊,用的真心愜意。下面給你們分享一下:java

    首先給IDEA配置好環境,好比JDK、Maven啥的,這個我就不詳述了,自行百度吧。web

    爲了讓目錄層次結構更好看些,先建立一個父項目,也是Maven Project的,建立後刪除不須要的東西,好比生成的pom.xml,src目錄等。而後就是建立子項目了,先看下總體結構:spring

    一、建立服務端Serverapache

    見圖說話,幾分鐘搞定,並且出錯概率小:app

    右鍵父項目->New->Module,選擇Spring Initalizr,配置好SDK,這裏須要聯網才行,否則默認的URL加載不出來:框架

     下一步點擊Next,這裏的Artifact好像不支持大寫,這個不是重點:eclipse

    最後,點擊Next,選擇Cloud Discovery->Eureka Server便可。maven

    完成後,會自動生成Application.java、空白的配置文件和配置好的pom.xml,固然須要什麼本身添加就是了,下面是個人配置:spring-boot

    pom.xml微服務

<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<groupId>EurekaServer</groupId>
	<artifactId>eurekaserver</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>jar</packaging>

	<name>eurekaserver</name>
	<description>Demo project for Spring Boot</description>

	<!-- 基於Springboot -->
	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>1.5.9.RELEASE</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>

	<!-- 設置字符編碼及java版本、spring-cloud版本 -->
	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<java.version>1.8</java.version>
		<spring-cloud.version>Edgware.RELEASE</spring-cloud.version>
	</properties>

	<dependencies>
		<!-- 增長eureka-server的依賴 -->
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-eureka-server</artifactId>
		</dependency>

		<!-- 用於測試的,可省略 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<!-- 依賴管理,用於管理spring-cloud的依賴,其中${spring-cloud.version}對應的Edgware.RELEASE是版本號 -->
	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-dependencies</artifactId>
				<version>${spring-cloud.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>


</project>

    application.properties

#端口
server.port=1111
#應用名稱
spring.application.name=eureka-server-01
#註冊中心
eureka.client.serviceUrl.defaultZone=http://localhost:2222/eureka/

    EurekaServerApplication.java

package eurekaserver.eurekaserver;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;

@EnableEurekaServer
@SpringBootApplication
public class EurekaserverApplication {

	public static void main(String[] args) {
		SpringApplication.run(EurekaserverApplication.class, args);
	}
}

    運行Application,服務界面以下,此時服務還沒有註冊:

    二、建立客戶端Client

    同建立Server同樣,只不過生成後須要修改部分便可,如pom.xml,下面是個人配置:

    pom.xml

<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<groupId>EurekaClient</groupId>
	<artifactId>eurekaclient</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>jar</packaging>

	<name>eurekaclient</name>
	<description>Demo project for Spring Boot</description>

	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>1.5.9.RELEASE</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<java.version>1.8</java.version>
		<spring-cloud.version>Edgware.RELEASE</spring-cloud.version>
	</properties>

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

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>

		<!--表示爲web工程-->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

		<!--顯示各類指標-->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-actuator</artifactId>
		</dependency>
	</dependencies>

	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-dependencies</artifactId>
				<version>${spring-cloud.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>


</project>

    application.properties

#端口
server.port=2222
#應用名稱
spring.application.name=eureka-client-01
#註冊中心
eureka.client.serviceUrl.defaultZone=http://localhost:1111/eureka/

     EurekaClientApplication.java

package eurekaclient.eurekaclient;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;

@EnableEurekaClient
@SpringBootApplication
public class EurekaclientApplication {

	public static void main(String[] args) {
		SpringApplication.run(EurekaclientApplication.class, args);
	}
}

    運行Application,服務界面以下,此時服務註冊:

    到此,服務註冊成功,是否是很方便呀,但願你們喜歡。

相關文章
相關標籤/搜索