1、概念
成都创新互联长期为1000+客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为新乡县企业提供专业的成都网站设计、成都做网站,新乡县网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。
Feign 是一种声明式、模板化的 HTTP 客户端,是一个声明web服务客户端,这便得编写web服务客户端更容易。
2、应用
2.1 、在项目中,模块与模块之间需要互相调用,比如web模块需要调用service模块的服务,这个时候就需要在web引入Fegin,创建项目web-fegin
2.2、在pom文件里面添加
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-feign</artifactId>
</dependency>
2.3、创建启动类WebFeignApplication
@SpringBootApplication
@EnableDiscoveryClient
@EnableFeignClients(basePackages="com.web")
public class WebFeignApplication{
public static void main(String[] args) {
SpringApplication.run(FeignApplication.class, args);
}
}
2.4、定义服务接口类UserFeignClient
@FeignClient(name =WebConstants.SERVIE_USER_NAME)
public interface UserFeignClient {
@RequestMapping("/{id}")
public User findByIdFeign(@RequestParam("id") Long id);
}
2.5、在web层调用Fegin
@RestController
public class FeignController {
@Autowired
private UserFeignClient userFeignClient;
@GetMapping("feign/{id}")
public User findByIdFeign(@PathVariable Long id) {
User user = this.userFeignClient.findByIdFeign(id);
return user;
}
}
2.6 如果不使用上面的fegin,则得自己写个服务调用类,来调用service的服务,增加编程的难度,既然有了fegin,就没必要重复造轮子了。
3、application.properties的配置
spring.application.name=web-fegin
server.port=8020
eureka.client.serviceUrl.defaultZone=http://localhost:9411/eureka/
service.user.name=microservice-provider-user
4、定义常量WebConstants
public class WebConstants{
public static final String SERVIE_USER_NAME="${service.user.name}";
}
5、访问
http://127.0.0.1:8020/fegin/1
6、总结:
其实通过Feign封装了HTTP调用服务方法,使得客户端像调用本地方法那样直接调用方法
分享文章:springcloud(四):Feign的应用
链接地址:https://www.cdcxhl.com/article28/jjggjp.html
成都网站建设公司_创新互联,为您提供自适应网站、移动网站建设、动态网站、微信小程序、用户体验、网站导航
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联