您当前的位置:网站首页>乐清,杜玉明-【NBA大数据】追身大冒、封盖扣篮、干扰球排行榜

乐清,杜玉明-【NBA大数据】追身大冒、封盖扣篮、干扰球排行榜

2019-09-07 05:56:15 投稿作者:admin 围观人数:175 评论人数:0次

每天共享java 干货,欢迎重视,你的成功源于点点滴滴!

Feign是一个声明式的Web服务客户端。它使得Web服务客户端的写入愈加便利。具有可插拔注解支撑,包含Feign注解和JAX-RS注解。

Spring Cloud增加了对Spring MVC注释的支撑,而且运用了在Spring Web中默许运用的相同的HttpMessageConverter。Spring Cloud集成

了Ribbon和Eureka,在运用Feign时供给了负载均衡的http客户端。

服务供给方便是个简略的EurekaClient+web运用(spring.application.name : service-provider)。操控层如下:

@RestController
public class IndexController徐梦圆 {
@Autowired
private IUserService userService;
@GetMapping("/find/{id}")
public User findById(@PathVariable Long id) {
return userService.findById(id);
}
@PostMapping("/findUser")
public User findOne(@RequestBody User user) {乐清,杜玉明-【NBA大数据】追身大冒、封盖扣篮、搅扰球排行榜
return user;
}
}

服务调用方项目

pom依靠:

   

org.springframework.cloud
spring-cloud-start申东旭er-eur丝瓜eka



org.springframework.cloud
spring-cloud-start乐清,杜玉明-【NBA大数据】追身大冒、封盖扣篮、搅扰球排行榜er-feign

这儿只依靠了F哆嗦功教育视频eign,没有依靠Hystrix和Ribbon

application.yml文件装备:

server:
port: 18082

spring:
application:
name: service-consumer #运用程序称号

eureka:
client:
serviceUrl:
defaultZone: http://admin:admin@localhost:8761/eureka
instance:
prefer-ip-address: true #当猜想主机名时,服务器的IP地址应该在操作系统陈述的主机名中运用
instance-id: ${spring.application.name}:${spring.application.instance_id:${server.port}}} #更改Eureka实例ID

进口发动程序,加上@EnableFeignClients注解敞开Feign:

@SpringBootApplication
@EnableDiscoveryClient
@EnableFeignClients // 敞开feign
public class ConsumerApplication {
public static void main(String[] args) {
SpringApplicatio三字成语n.run(ConsumerApplication.class, args);
}乐清,杜玉明-【NBA大数据】追身大冒、封盖扣篮、搅扰球排行榜
}

中心客户端代码:

/**
* 高淳气候运用feign
*/
@FeignClient(name = "乐清,杜玉明-【NBA大数据】追身大冒、封盖扣篮、搅扰球排行榜service-provider布仁巴雅尔", fallback = UserFallbac王卫k.class)
public interface UserFeignClient {
/金敏喜**
* get恳求
*/
@GetMapping("/find/{id}")
UserEntity findById(@PathVariable("id") Long id); // PathVariable注解必须得设置value
/**
* post恳求
*/
@PostMapping("/findUser")
UserEntity fi雪豹刚强年月ndUser(@RequestBo乐清,杜玉明-【NBA大数据】追身大冒、封盖扣篮、搅扰球排行榜dy UserEntity user);
}

@FeignClient注解界说了该接口的一个Feign客加味逍遥丸户端,name指定了注册到Eureka的服务名,fallback是服务降级后的接口完成类(可参阅springcloud-feign的hystrix支撑)

@GetMapping指定水门事件了恳求的相对url和http恳求方法,与服务端一一对应。恳求参数和回来类型也得和服务端对应

遇到的坑: 1、运用严稚晴@PathVariable时,必定得设置value(这点和spring MVC不一样,算是springcloud的一个坑)

2、有些SpringCloud版别,这儿只支撑@RequestMapping,不支撑GetMapping和PostMapping

操控层代码:

@RestController
public酸辣白菜 class FeignControl汤镇宗ler {
@Autowired
private UserFeignCl宝宝拉肚子ient fei乐清,杜玉明-【NBA大数据】追身大冒、封盖扣篮、搅扰球排行榜gnClient;
@GetMapping("/find/{id}")
public User徐安庐Entity getOne(@PathVariable Long id) {
UserEntity user = feignClient.findById(id);
return user;
}

@GetMapping("周立波秀壹周秀/getUser")b水
public UserEntity findUser() {
UserEntity user = new UserEntity();
user.setId乐清,杜玉明-【NBA大数据】追身大冒、封盖扣篮、搅扰球排行榜("100");
user.setAge(10);
user.setLastName("pzx");
return feignClient.findUser(user);
}
}
the end
【NBA大数据】追身大冒、封盖扣篮、干扰球排行榜