使用实战【一】搭建完成的服务
下面简单写了一个实例
用于刚入门springcloud的同学简单明了的了解服务调用是怎么回事?
1.在cloud-provider服务中,写自己需要对外提供的方法
controller
@RestController
@RequestMapping("/hello")
public class HelloController {
@Autowired
private HelloService helloService;
@GetMapping("/getHello")
public String getHello(){
return helloService.getHello();
}
}
@Service
public class HelloServiceImpl implements HelloService {
@Override
public String getHello() {
return "你好兄弟,我是提供者provider,需要什么信息,尽管和我说!!!!";
}
}
启动类
@EnableEurekaClient//注册中心客户端--加注解
2.调用方(消费方)cloud-client调用provider提供的方法
controller
@RestController
@RequestMapping("/hello")
public class HelloClient {
@Autowired
private HelloService helloService;
//消费者调用方调用体重这的方法
@GetMapping("/getClient")
public String getClient(){
return helloService.getProduct();
}
}
//name 为cloud-provider项目中application.yml配置文件中的application.name;
//path 为cloud-provider项目中application.yml配置文件中的context.path;
@FeignClient(name = "cloud-provider",path ="/hello" )
@Component
//@Componet注解最好加上,不加idea会显示有错误,但是不影响系统运行;
public interface HelloService {
//调用provider项目里的方法(名字和provider项目要一样)
@RequestMapping(value = "getHello", method = RequestMethod.GET)
String getProduct();
}
启动类加注解
@EnableFeignClients
最后
把三个项目启动完成后,进行访问cloud-client项目
http://localhost:8083/hello/getClient
sucess!!!!