SpringCloud教程(Finchley版本)-02:服务消费者
##### 本文,讲述如何将一个服务注册到eureka注册中心,主要分为以下几个步骤:
- 1.新建项目
- 2.引入eureka依赖
- 3.添加注解
- 4.修改配置文件
- 5.新建一个controller,提供一个服务接口
- 6.启动项目
##### 由于后续需要演示负载均衡,这里会创建两个项目company_server1,company_server2,这两个项目提供完全相同的服务,注册到注册中心时,使用相同的服务名称company-server,由于是两个服务,所以项目的端口是不同的,其他相同。具体步骤如下:
### 1.新建项目
新建一个SpringBoot项目company_server1。
### 2.引入eureka依赖
eureka-client依赖:
```
<!--eureka client-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
```
springcloud依赖,在<dependencies> </dependencies>标签外面:
```
<!--springcloud依赖管理-->
<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>
```
```
<spring-cloud.version>Finchley.SR2</spring-cloud.version>
```
### 3.添加注解
在启动类添加注解@EnableEurekaClient,将项目启动为一个以eureka做注册中心的服务。
```
@EnableEurekaClient
@SpringBootApplication
public class CompanyServer1Application {
public static void main(String[] args) {
SpringApplication.run(CompanyServer1Application.class, args);
}
}
```
### 4.修改配置文件
```
server:
port: 8011
spring:
application:
name: company-server
eureka:
client:
service-url:
default: http://localhost:8761/eureka
```
name: company-server,就是把此项目注册到注册中心时,服务名为company-server,后面其他项目,通过这个服务名称,就能找到这个服务,而不需要通过ip:port。
### 5.新建一个controller,提供一个服务接口
我们新建一个controller包,下面建一个CompanyController,里面写一个服务接口,对外提供服务,代码如下:
```
@RestController
@RequestMapping("company")
public class CompanyController {
@Value("${server.port}")
String port;
@GetMapping("get")
public String getCompany(Integer id){
return "port:"+port+",企业信息为:阿里巴巴"+id;
}
}
```
### 6.启动项目
启动项目,会发现项目注册到了注册中心上:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20181124100403157.png)
访问接口http://localhost:8011/company/get?id=2,发现接口也可以提供服务。
![在这里插入图片描述](https://img-blog.csdnimg.cn/20181124100434772.png)
然后我们再写一个相同的服务,步骤和上面一样,端口改为8014,注册时,服务名和上面一样,也是company-server,提供相同的服务,方便后面演示负载均衡。
下一篇:[SpringCloud教程(Finchley版本)-03:负载均衡(Ribbon)](https://blog.csdn.net/weixin_39800144/article/details/84638394)
完整源码参考:https://github.com/myJava4all/springcloudfinchley
- 点赞
- 收藏
- 关注作者
评论(0)