使用SpringCloud搭建微服务<二>---------创建微服务的消费者
来源:互联网 发布:人生有涯而知无涯 编辑:程序博客网 时间:2024/05/17 06:03
上一节(使用SpringCloud搭建微服务<一>),我们创建了服务的提供者,也就是用户微服务,用户微服务提供了一个接口,根据ID获取用户的余额和其他信息。今天我们来创建微服务的消费者---电影微服务。
一、使用Spring Initializr 来快速创建Spring Boot项目
Spring Initializr 有一下几种使用方法:
通过网页使用(http://start.spring.io/)
通过Intellig idea 使用。
通过Spring Boot CLI使用
我们选择第二种方式创建,我使用的是IDEA的版本是IDEA.2017.2,
选择file-->new Project
选择 Spring Initializr 选择自己需要的SDK,URL选择默认的,点击下一步
填写项目的GroupId和ArtifactId
选择项目需要对应的jar,我们先引入SpringMVC的相关jar
点击NEXT、finish就完成了创建
二、编写服务消费者
pom文件中的内容如下
<?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>com.mountain.springboot</groupId><artifactId>microservice-consumer-movie-metadata</artifactId><version>0.0.1-SNAPSHOT</version><packaging>jar</packaging><name>microservice-simple-consumer-movie</name><description>Demo project for Spring Boot</description><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.5.8.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></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><!--引入spring cloud的依赖--><dependencyManagement><dependencies><dependency><groupId> org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>Camden.SR4</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>
创建用户实体类,该类是一个pojo
@Entitypublic class User { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; @Column private String name; @Column private String username; @Column private Integer age; @Column private BigDecimal balance;此处省略set/get}
创建启动类的代码
@SpringBootApplicationpublic class MicroserviceSimpleConsumerMovieApplication {@Beanpublic RestTemplate restTemplate(){return new RestTemplate();}public static void main(String[] args) {SpringApplication.run(MicroserviceSimpleConsumerMovieApplication.class, args);}}
创建Controller,在其中使用RestTemplate请求用户微服务的API
@RestControllerpublic class MoVieController { @Autowired private RestTemplate restTemplate;
@Value("${user.userServiceUrl}") private String userServiceUrl; @GetMapping("/user/{id}") public User findById(@PathVariable Long id) { return this.restTemplate.getForObject(userServiceUrl + id, User.class); }}
编写配置文件application.yml
server: port: 8010user: userServiceUrl: http://localhost:8000/
这样一个简单的电影微服务就完成了
访问http://localhost:8010/user/1 结果如下:
注意:用户微服务必须先启动,应为我们是电影微服务调用用户的微服务获取用户信息
{ "id": 1, "name": "张三", "username": "account1", "age": 20, "balance": 100}
阅读全文
1 0
- 使用SpringCloud搭建微服务<二>---------创建微服务的消费者
- 使用SpringCloud搭建微服务<一>
- 使用SpringCloud实战微服务
- 使用SpringCloud实战微服务
- SpringCloud微服务架构搭建(二):配置中心
- 【微服务架构】springcloud微服务架构搭建
- 利用SpringCloud搭建一个最简单的微服务框架
- 利用SpringCloud搭建一个最简单的微服务框架
- 利用SpringCloud搭建一个最简单的微服务框架
- springcloud微服务
- 初学springcloud微服务框架(二)
- 使用SpringCloud搭建微服务<三>---------使用EureKa编写服务的注册中心
- springCloud微服务学习总结
- 1、SpringCloud 微服务介绍
- SpringCloud 微服务综合实例
- 微服务框架-SpringCloud简介
- SpringCloud构建微服务入门架构(二)服务注册与发现Eureka集群搭建
- SpringCloud微服务搭建教程有负载均衡
- Stencil Buffer&Stencil Test
- 用户管理系统模板
- 洛谷1082 同余方程
- fragment
- Node 调试指南 —— Inspector 协议
- 使用SpringCloud搭建微服务<二>---------创建微服务的消费者
- MyTask接口方法
- 跳转
- tomcat配置环境变量后在cmd中输入startup出现the JRE_HOME environment variable is not defined correctly This environ
- 综合2
- 一只想要进步的菜鸟
- 当同时导入多个第三方jar时引起的so库冲突或者找不到库UnsatisfiedLinkError的解决方法
- angular Js的增删改查
- Streamtosring