一.创建一个名为(microservicecloud)的父工程
File=>new=>others=>maven project
点击next
ps:报错是因为我已经建了一个名为microservicecloud的工程,接下来直接点击finish就可以了。
在pom.xml里配置以下内容:
<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>com.atguigu.springcloud</groupId>
<artifactId>microservicecloud</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<junit.version>4.12</junit.version>
<log4j.version>1.2.17</log4j.version>
<lombok.version>1.16.18</lombok.version>
</properties>
<dependencyManagement>
<dependencies>
<!--spring cloud -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Dalston.SR1</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!--spring boot -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>1.5.9.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!--mysql驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.0.4</version>
</dependency>
<!--德鲁伊 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.0.31</version>
</dependency>
<!--spring boot和mybatis整合 -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.0</version>
</dependency>
<!--logback日志 -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.2.3</version>
</dependency>
<!--测试 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
<!--log4日志 -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>${log4j.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<finalName>microservicecloud</finalName>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<delimiters>
<delimit>$</delimit>
</delimiters>
</configuration>
</plugin>
</plugins>
</build>
</project>
二·创建一个名为(microservicecloud-eureka-8082)的子工程
右击父工程=>new=>others=>maven module
ps:报错是因为我已经建了一个名为microservicecloud-eureka-8082的工程,接下来直接点击finish就可以了。
创建完成后,父工程microservicecloud的pom里会增加一段代码(说明microservicecloud-eureka-8082是microservicecloud的子工程,同理以后每增加一个子工程父工程里都会自动添加):
<modules>
<module>microservicecloud-eureka-8082</module>
</modules>
三.引入eureka server的相关坐标
<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>
<parent>
<groupId>com.atguigu.springcloud</groupId>
<artifactId>microservicecloud</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>microservicecloud-eureka-8082</artifactId>
<dependencies>
<!-- eureka server服务器端 -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka-server</artifactId>
</dependency>
<!--热部署插件,一修改即生效 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>springloaded</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
</dependencies>
</project>
四.编写主程序类
创建一个名为eureka_8082_Application的class,内容为:
package com.atguigu.springcloud;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
@SpringBootApplication
//EurekaServer服务器端启动类,接受其它微服务注册进来
@EnableEurekaServer
public class eureka_8082_Application {
public static void main(String[] args)
{
SpringApplication.run(eureka_8082_Application.class, args);
}
}
ps:@EnableEurekaServer这个注释尤为重要,表明我就是一个服务注册中心,我就是eureka的server端,接受其它服务注册进来
五.配置application,properties
在src/main/resources文件夹下面建一个名为application的properties文件,内容为:
#本服务端口号
server.port=8082
#eureka服务器的实例名称
eureka.instance.hostname=eureka8082.com
#false表示不想服务中心注册自己
eureka.client.register-with-eureka=false
#false表示自己就是注册中心,职责就是维护实例,并不需要去检索服务
eureka.client.fetch-registry=false
#设置与eureka server交互的地址查询服务和注册服务
#单机
eureka.client.service-url.defaultZone=http://eureka8082.com:8082/eureka
#=eureka.client.service-url.defaultZone=http://${eureka.instance.hostname}:${server.port}/eureka
#多机
#eureka.client.service-url.defaultZone=http://eureka8082.com:8082/eureka,http://eureka8084.com:8084/eureka/,http://eureka8083.com:8083/eureka/
#禁用自我保护机制
#eureka.server.enable-self-preservation=false
1.eureka.client.register-with-eureka:表示是否向服务注册中心注册自己,默认值为true(为true则表明自己是客户端,非服务器端),所这里的值为false。
2.eureka.client.fetch-registry:表示是否检索服务,默认值为True(会进行服务检索),服务注册中心不负责检索服务。
3.eureka.client.service-url.defaultZone:是一个默认的注册中心地址。配置该选项后,可以在服务中心进行注册。
六.为项目配置IP地址
打开电脑上路径为C:\Windows\System32\drivers\etc下的hosts文件,在hosts文件里为项目配置IP地址
eureka8082.com是第四步application.properties文件里eureka.instance.hostname的值,值可以随意改变,但是两个值一定要相同。
ps: eureka.instance.hostname=localhost 也可以,因为hosts文件里早就已经配置好了,可以直接使用。
七.启动项目
右击项目=>Run As=>spring boot app
如果项目启动成功,则会出现以下界面
ps: url的书写格式为: eureka.instance.hostname : server.port
本项目的url为: eureka8082.com : 8082
这是我第一次写博客,有什么错误请大家见谅哦!