引言:先创建一个父工程spring-cloud-parent,包括四个个模块,一个提供者spring-cloud-provider,一个消费者spring-cloud-consumer,一个注册中心spring-cloud-eureka,一个存储公共资源的模块spring-cloud-common

1、父工程spring-cloud-parent加载的依赖

<dependencyManagement><dependencies><!-- 导入SpringCloud需要使用的依赖信息 --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>Greenwich.SR2</version><type>pom</type><!-- import依赖范围表示将spring-cloud-dependencies包中的依赖信息导入 --><scope>import</scope></dependency><!-- 导入SpringBoot需要使用的依赖信息 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>2.1.6.RELEASE</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement>

2、spring-cloud-provider模块需要加载的资源

<parent><artifactId>spring-cloud-study-parent</artifactId><groupId>org.example</groupId><version>1.0-SNAPSHOT</version></parent><dependencies>
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.example</groupId><artifactId>spring-cloud-common</artifactId><version>1.0-SNAPSHOT</version></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-client</artifactId></dependency></dependencies>

2.1、静态资源配置文件application.yml:

server:port: 1000spring:application:name: atguigu-provider    # 指定当前微服务名称,以便将来通过微服务名称调用当前微服务时能够找到eureka:client:service-url:    # 配置当前微服务作为Eureka客户端访问Eureka服务器端时使用的地址defaultZone: http://localhost:5000/eureka

2.2、创建一个controller类,类名为EmployeeHandler,写一个测试方法:

@RequestMapping("/provider/get/employee/remote")public Employee getEmployeeRemote() {return new Employee(555, "tom555", 555.55);}

3、spring-cloud-consumer模块需要加载的资源

 <parent><artifactId>spring-cloud-study-parent</artifactId><groupId>org.example</groupId><version>1.0-SNAPSHOT</version></parent><dependencys><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-client</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.example</groupId><artifactId>spring-cloud-common</artifactId><version>1.0-SNAPSHOT</version></dependency></dependencys>

3.1、静态资源配置文件application.yml:

server:port: 7000
spring:application:name: atguigu-consumer
eureka:client:service-url:defaultZone: http://localhost:5000/eureka/

3.2、创建一个controller类,类名为HumanResourceHandler,写一个测试方法:

 @Autowiredprivate RestTemplate restTemplate;@RequestMapping("/consumer/get/employee")public Employee getEmployeeRemote() {// 1.声明远程微服务的主机地址加端口号//String host = "http://localhost:1000";// 1.加入wureka后,使用微服务名称替代 IP 地址+端口号String host = "http://atguigu-provider";// 2.声明具体要调用的功能的URL地址String url =  "/provider/get/employee/remote";// 3.通过RestTemplate调用远程微服务return restTemplate.getForObject(host + url, Employee.class);}

3.3、创建一个配置类AtguiguSpringCloudConfig,加载RestTemplate:

@Configuration
public class AtguiguSpringCloudConfig {@Bean@LoadBalancedpublic RestTemplate getRestTemplate() {return new RestTemplate();}}

4、spring-cloud-eureka模块需要加载的资源

<parent><artifactId>spring-cloud-study-parent</artifactId><groupId>org.example</groupId><version>1.0-SNAPSHOT</version></parent><dependencys><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</artifactId></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-client</artifactId></dependency>
</dependencys>

4.1、静态资源配置文件application.yml:

server:port: 5000eureka:instance:hostname: localhost         # 配置当前Eureka服务的主机地址client:register-with-eureka: false # 当前服务本身就是注册中心,不必“自己注册自己”fetch-registry: false       # 当前服务本身就是注册中心,不必“从注册中心取回信息”service-url: # 客户端(指consumer、provider)访问当前注册中心时使用的地址defaultZone: http://${eureka.instance.hostname}/${server.port}/eureka

4.2、启动类要加@EnableEurekaServer注解:

/ 启用Eureka服务器端功能
@EnableEurekaServer
@SpringBootApplication
public class AtguiguMainType {public static void main(String[] args) {SpringApplication.run(AtguiguMainType.class, args);}}

5、spring-cloud-common模块需要加载的资源:

 <parent><artifactId>spring-cloud-study-parent</artifactId><groupId>org.example</groupId><version>1.0-SNAPSHOT</version></parent><dependencys><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-openfeign</artifactId></dependency></dependencys>

5.1、创建一个实体类Employee:

public class Employee {private Integer empId;private String empName;private Double empSalary;public Employee() {}public Employee(Integer empId, String empName, Double empSalary) {super();this.empId = empId;this.empName = empName;this.empSalary = empSalary;}@Overridepublic String toString() {return "Employee [empId=" + empId + ", empName=" + empName + ", empSalary=" + empSalary + "]";}public Integer getEmpId() {return empId;}public void setEmpId(Integer empId) {this.empId = empId;}public String getEmpName() {return empName;}public void setEmpName(String empName) {this.empName = empName;}public Double getEmpSalary() {return empSalary;}public void setEmpSalary(Double empSalary) {this.empSalary = empSalary;}}

springClude简单配置相关推荐

  1. 简单配置nginx反向代理,实现跨域请求

    简单配置nginx去做反向代理,实现跨域请求 简单介绍nginx的nginx.conf最核心的配置,去做反向代理,实现跨域请求. 更多详细配置,参考nginx官方文档 先介绍几个nginx命令 打开n ...

  2. Centos 6.5下一个SNMP简单配置(snmp protocol v3,监控宝)

    Centos 6.5下一个SNMP简单配置(snmp protocol v3.监控宝) jom_ch@2014/7/25 1,安装 >yum -y install net-snmp net-sn ...

  3. virtualbox 创建桥接网络_VirtualBox桥接网络的简单配置,让虚拟机直接访问网络

    VirtualBox桥接网络的简单配置,让虚拟机直接访问网络 分类: Linux 2009-08-20 08:59 5071人阅读 评论(0) 收藏 举报 (1)最新的 VirtualBox 可以简单 ...

  4. Webpack4 学习笔记 - 01:webpack的安装和简单配置

    安装 webpack 新建一个Demo文件夹,执行初始化: npm init 在Demo文件夹里安装 webpack 和 webpack-cli : npm install webpack webpa ...

  5. yum源的超级简单配置

    yum源的超级简单配置 1.先挂载光盘. 使用命令"mount  -o  loop  /dev/sr0 /mnt/cdrom".如果使用命令"mount -o  loop ...

  6. Apache简单配置(4)搭建Discuz 7.0.0论坛

    Apache简单配置(4)搭建Discuz 7.0.0论坛 RHEL5.3 基本网络配置 一. 1.RHEL5 U3:如图1 (如图1) 2.#hostname //查看当前主机的主机名:如图2 (如 ...

  7. maven存在的意义及其与eclipse的简单配置

    Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具. 以上定义源自百度百科. 其实,我认为,Maven是一个采用纯Java编写的开源项目管理工 ...

  8. 20 ubuntu 中科大源_Linux-Ubuntu简单配置-换国内源-中文显示

    Linux-Ubuntu(个人示例使用版本20.04,其余版本区别不大) 好像知乎的动图加载有问题,这个动图应该阔以(*^▽^*)Linux-Ubuntu简单配置-更换国内源-中文设置​www.bil ...

  9. DNS服务器之简单配置(一)

    名词解释: 域名: 域名是域名系统名字空间中,从当前节点到根节点的路径上所有节点标记的点分顺序连接. 域: 域是指域名系统名字空间中的一个子集,也就是树形结构名字空间中的一颗子树.这个子树根节点的域名 ...

最新文章

  1. 分享一个SQLite 性能优化实例
  2. python飞机大战源代码-python版飞机大战代码分享
  3. ubuntu16.04安装ROS
  4. cas 注销不关闭浏览器异常_如何关闭华为手机这些“流氓”推送?
  5. 看了2022华为春季发布会
  6. Javascript中暂停功能的实现
  7. 使用 docker+tmux 加强容器调度
  8. jenkins 控制台输出中文乱码
  9. C#之Application.DoEvents()
  10. 文本文件以EF BB开头,使用UTF8读取
  11. Web前端可视化绘图软件编辑器-汇总
  12. 22000字深入研究消费电子光学传感器行业
  13. 使用美图秀秀批量处理照片
  14. 逻辑推理题的思路规律
  15. compareTo()用法
  16. 写在2015年年末的年终总结
  17. java守护进程怎么写_关于JAVA的守护进程
  18. 人工智能提纲式汇总+简要分析 可用于复习《人工智能——一种现代的方法》
  19. PLC系统中的5个技术指标
  20. 获真格、创新工场、火星人、节点等十余家知名资本青睐——YeeCall要成为能赚钱的区块链社交平台

热门文章

  1. android 交互什么意思,知乎安卓客户端交互设计分析
  2. 第11.3节 Python正则表达式搜索支持函数search、match、fullmatch、findall、finditer
  3. 分布式之线上监控工具CAT
  4. 线程间共享 部分变量 Spring框架下向异步线程传递HttpServletRequest参数
  5. 基于Java的GUI界面+SQL Server数据库课程信息管理系统
  6. wlop一张多少钱_为什么很多人都对wlop有成见?
  7. VictoriaMetrics与Thanos方案对比
  8. 中国伸缩式起重机行业市场供需与战略研究报告
  9. 外卖红包领取公众号简单搭建
  10. windows中docker 安装和使用