Spring Cloud是一个提供工具支持以快速、便捷的方式构建和部署分布式系统的Spring子项目。它基于Spring Boot,使得开发者可以快速地开发、部署、和更新微服务。
以下是一个简单的Spring Cloud微服务示例,使用Spring Cloud Netflix的Eureka作为服务注册中心。
- 创建一个服务注册中心(Eureka Server):
@EnableEurekaServer
@SpringBootApplication
public class EurekaServerApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaServerApplication.class, args);
}
}
application.properties:
spring.application.name=eureka-server
server.port=8761
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
- 创建一个服务提供者(Eureka Client):
@EnableEurekaClient
@SpringBootApplication
public class ServiceProviderApplication {
public static void main(String[] args) {
SpringApplication.run(ServiceProviderApplication.class, args);
}
}
application.properties:
spring.application.name=service-provider
server.port=8080
eureka.client.service-url.defaultZone=http://localhost:8761/eureka/
一个REST控制器:
@RestController
public class ServiceController {
@GetMapping("/hello/{name}")
public String hello(@PathVariable String name) {
return "Hello, " + name + "!";
}
}
在这个例子中,我们创建了一个Eureka Server和一个Eureka Client。Eureka Server用于服务注册,而Eureka Client提供了一个REST接口,该接口会注册到Eureka Server并能够处理"/hello/{name}"的GET请求。这个简单的例子展示了如何使用Spring Cloud构建微服务的基础。