一、介绍springcloud
谷歌下更健康~
二、搭建步骤
1、创建一个maven项目
(1)打开idea,File —> New project —>Maven
(2)根据自己的设置,填写下面信息,next
(3)这里填好相关路径后,可以选择性添加 archetypeCatalog=internal,作用是直接从本地获取项目骨架
建好后的目录如下:
本地目录如下:
(4)本地安装,对比目录变化
输入命令如下:
控制台出现success后,安装成功!
idea中目录增加的内容:
本地项目增加的文件:
(5)将war放到Tomcat下执行
按照下图步骤添加Tomcat
部署本地 war 到Tomcat:
部署成功,显示如下:
启动Tomcat:
方法一:在idea中,启动Tomcat;
方法二:进入本地Tomcat文件夹下的 bin问价夹下,双击startup.sh,通过cmd命令启动Tomcat,也可以。
验证:网址输入 http://localhost:8080/ 出现“Hello,World!”,启动成功!
到此,一个Maven项目创建成功
2、创建注册中心
(1)找到 右键springcloudtest —> New —> Module
(2)此处选中 Spring Initializr,Default,next
下方信息,根据情况添加
(3)选中 Eureka Server,自动导入该包:
创建后的目录:
(4)pom中添加注册中心的依赖
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!--添加注册中心的依赖-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka-server</artifactId>
<version>1.4.2.RELEASE</version>
</dependency>
</dependencies>
(5)启动项中添加注解 @EnableEurekaServer
@EnableEurekaServer//添加该注解,申明此处为服务注册中心
@SpringBootApplication
public class RegisterApplication {
public static void main(String[] args) {
SpringApplication.run(RegisterApplication.class, args);
}
}
(6)配置文件 application.properties 信息编辑:
server.port=8871
eureka.instance.hostname=localhost
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
eureka.client.service-url.defaultZone=http://${eureka.instance.hostname}:${server.port}/eureka/
也可以写成 yml 文件,差别是 yml更有层次感,格式要求更高,而properties必须写全。
注意:
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
意义是,禁止 eureka server 自己注册自己
(7)启动,验证注册中心是否可用 http://localhost:8871/
出现下方网页,则成功:
3、创建生产者
(1)步骤跟创建注册中心一样,区别在命名:producer
(2)pom中添加依赖
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka</artifactId>
<version>1.4.4.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
(3)application.properties中配置相关信息
eureka.client.service-url.defaultZone=http://localhost:8871/eureka/
server.port=8872
spring.application.name=producer
(4)启动项中 添加注解 @EnableEurekaClient,声明自己为生产者
@EnableEurekaClient//声明自己为生产者
@SpringBootApplication
@RestController
public class ProducerApplication {
public static void main(String[] args) {
SpringApplication.run(ProducerApplication.class, args);
}
@Value("${server.port}")
String port;
@RequestMapping("/test")
public String test(String name){
return "Hello," + name + "! i am " + port;
}
}
(5)启动 producer,刷新 注册中心页面,可以看到 服务已经注册到注册中心
浏览器输入:http://localhost:8872/test
返回:Hello,null! i am 8872
浏览器输入:http://localhost:8872/test?name=xck
返回:Hello,xck! i am 8872
4、创建一个消费者
(1)前面步骤同上
(2)pom中添加依赖
<dependencies>
<dependency>