当前位置: 首页 > news >正文

道真县城乡建设局网站/苏州网站制作开发公司

道真县城乡建设局网站,苏州网站制作开发公司,设计杂志官网,目前做网站的公司有哪些Feign 实现接口与接口之间的调用 Swagger 自动生成接口文档 Zuul 一种网关,实现地址转发和路由 实现 项目结构 whotw-springcloud 【project 】 ——whotw-basics 【module pom】 ————whotw-basics-eureka 【module jar】 ————whotw-basics-zuul 【module j…

在这里插入图片描述

Feign

实现接口与接口之间的调用

Swagger

自动生成接口文档

Zuul

一种网关,实现地址转发和路由

实现

  • 项目结构

    whotw-springcloud 【project 】
    ——whotw-basics 【module pom】
    ————whotw-basics-eureka 【module jar】
    ————whotw-basics-zuul 【module jar】
    ——whotw-service-api【module pom】
    ————whotw-service-api-member【module jar】
    ————whotw-service-api-order【module jar】
    ——whotw-service-impl【module pom】
    ————whotw-service-impl-member【module jar】
    ————whotw-service-impl-order【module jar】

  • 注意

    每个项目的代码必须在建立的包中最好在com.whotw包下
    启动类 (MemberApp,OrderApp,EurekaApp…)在src.java包下

    在这里插入图片描述

  • 依赖和yml
    whotw-springcloud根项目的依赖

    Eureka (Eureka原理和使用)

     <dependencies><!--SpringCloud eureka-server --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</artifactId></dependency></dependencies>###服务端口号server:port: 13730###eureka 基本信息配置eureka:instance:###注册到eurekaip地址hostname: 127.0.0.1client:service-url:defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/###因为自己是为注册中心,不需要自己注册自己register-with-eureka: false###因为自己是为注册中心,不需要检索服务fetch-registry: false
    

    Zuul

     <dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-client</artifactId></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-zuul</artifactId></dependency><!--集成swagger&#45;&#45;自动生成文档--><dependency><groupId>com.spring4all</groupId><artifactId>swagger-spring-boot-starter</artifactId><version>1.7.0.RELEASE</version></dependency></dependencies>     ############common define#################eureka-port: 13730eureka-host: localhost############common define#################server:#App's portport: 11710spring:application:#App's namename: whotw-zuul###服务注册到eureka地址eureka:client:service-url:defaultZone: http://${eureka-host}:${eureka-port}/eureka###zuul网关实现反向代理zuul:#URL路由routes:api-a:#访问微信接口路径path: /whotw-order/**#服务名serviceId: whotw-orderapi-b:path: /whotw-member/**serviceId: whotw-member
    

    api

      <dependencies><!--集成swagger&#45;&#45;自动生成文档--><dependency><groupId>com.spring4all</groupId><artifactId>swagger-spring-boot-starter</artifactId><version>1.7.0.RELEASE</version></dependency></dependencies>
    

    impl

      <dependencies><!-- springcloud feign组件 --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-openfeign</artifactId></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-client</artifactId></dependency></dependencies>
    

    impl-member

      <dependencies><dependency><groupId>whotw-springcloud</groupId><artifactId>whotw-service-api-member</artifactId><version>1.0-SNAPSHOT</version></dependency></dependencies>############common define#################eureka-port: 13730eureka-host: localhost############common define#################server:#App's portport: 8081spring:application:#App's namename: whotw-member###服务注册到eureka地址eureka:client:service-url:defaultZone: http://${eureka-host}:${eureka-port}/eureka####swagger相关配置swagger:enabled: truetitle: 会员服务接口APIdescription: member apibase-package: com.whotwbase-path: /**#exclude-path: /errorversion: @project.version@contanct:name: lqemail: 442232278@qq.com
    

    impl-order

      <dependencies><dependency><groupId>whotw-springcloud</groupId><artifactId>whotw-service-api-member</artifactId><version>1.0-SNAPSHOT</version></dependency><dependency><groupId>whotw-springcloud</groupId><artifactId>whotw-service-api-order</artifactId><version>1.0-SNAPSHOT</version></dependency></dependencies>############common define#################eureka-port: 13730eureka-host: localhost############common define#################server:#App's portport: 8082spring:application:#App's namename: whotw-order###服务注册到eureka地址eureka:client:service-url:defaultZone: http://${eureka-host}:${eureka-port}/eureka####swagger相关配置swagger:enabled: truetitle: 订单服务接口APIdescription: order apibase-package: com.whotwbase-path: /**#exclude-path: /errorversion: @project.version@contanct:name: lqemail: 442232278@qq.com
    
  • 代码
    Eureka

     @SpringBootApplication@EnableEurekaServerpublic class EurekaApp {public static void main(String[] args) {SpringApplication.run(EurekaApp.class, args);}}
    

    Zuul

     @SpringBootApplication@EnableSwagger2Doc@EnableZuulProxy@EnableEurekaClientpublic class ZuulApp {public static void main(String[] args) {SpringApplication.run(ZuulApp.class, args);}@Component@Primaryclass DocumentationConfig implements SwaggerResourcesProvider {@Overridepublic List<SwaggerResource> get() {List resources = new ArrayList<>();// 服务名称/v2/api-docsresources.add(swaggerResource("订单服务api", "/whotw-order/v2/api-docs", "2.0"));resources.add(swaggerResource("会员服务api", "/whotw-member/v2/api-docs", "2.0"));return resources;}private SwaggerResource swaggerResource(String name, String location, String version) {SwaggerResource swaggerResource = new SwaggerResource();swaggerResource.setName(name);swaggerResource.setLocation(location);swaggerResource.setSwaggerVersion(version);return swaggerResource;}}}
    

    api-member

     @ApiModel("会员实体")@Datapublic class MemberEntity {@ApiModelProperty(value = "会员名称")private String name;}@Api(tags = "会员服务接口")public interface MemberService {/*** 获取微信AppEntity** @return*/@ApiOperation(value = "获取会员")@GetMapping("/getMember")public MemberEntity getMember(@RequestParam("userId") String userId);}
    

    api-order

     @Api(tags = "订单服务接口")public interface OrderService {/*** 会员调用微信** @return* @ApiOperation @Api @*/@ApiOperation(value = "订单调用会员接口")@GetMapping("/orderCallMember")public MemberEntity orderCallMember(@RequestParam("userId") String userId);}
    

    impl-member

     @RestControllerpublic class MemberServiceImpl implements MemberService {@Overridepublic MemberEntity getMember(String userId) {MemberEntity memberEntity = new MemberEntity();memberEntity.setName(userId);return memberEntity;}}@SpringBootApplication@EnableEurekaClient@ComponentScan(value = "com.whotw")@EnableSwagger2Docpublic class MemberApp {public static void main(String[] args) {SpringApplication.run(MemberApp.class, args);}}
    

    impl-order

     @FeignClient("whotw-member")public interface MemberFeign extends MemberService {}@RestControllerpublic class OrderServiceImpl implements OrderService {@Autowiredprivate MemberFeign memberFeign;@Overridepublic MemberEntity orderCallMember(String userId) {MemberEntity member = memberFeign.getMember(userId);System.out.println("this is orderServiceImpl");System.out.println("会员名称" + member.getName());member.setName("调用会员成功!");return member;}}@SpringBootApplication@EnableEurekaClient@EnableSwagger2Doc@EnableFeignClientspublic class OrderApp {public static void main(String[] args) {SpringApplication.run(OrderApp.class, args);}}	
    
  • 测试
    先启动Eureka在启动其他服务
    Eureka
    http://localhost:13730/
    在这里插入图片描述
    Zuul 直接在zuul上测试即可,zuul包含member和order
    http://localhost:11710/swagger-ui.html
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    选择一个服务接口

    member
    http://localhost:8081/swagger-ui.html
    在这里插入图片描述

order
http://localhost:8082/swagger-ui.html

在这里插入图片描述

在这里插入图片描述

http://www.lbrq.cn/news/1603351.html

相关文章:

  • 外国做袜子的网站/线上推广具体应该怎么做
  • 做自媒体查找素材的网站/网站seo优化课程
  • 国务院关于网站建设/百度app安装
  • 小白测评做网站/百度 营销中心
  • 如何在电脑上建立网站/谷歌下载
  • 中国日报网英文官方网站建设/中国制造网网站类型
  • 南通网站建设系统方案/西安网络推广外包公司
  • 手机怎样做网站/网站关键词优化建议
  • 网络专业的网站建设/福州seo网络推广
  • 灯饰网站建设/seowhy教研室
  • 猪八戒wordpress/常熟seo关键词优化公司
  • 网站设计导航栏怎么做/怎么自己建立网站
  • 域名手机网站源码/百度游戏中心app
  • 做网站经验/seo教程技术优化搜索引擎
  • 股票网站排名哪个好/岳阳seo
  • 武汉专业建站注意事项/运营培训
  • 新乡专业网站建设公司/百度网页pc版登录
  • 制作企业网站的步骤/seo去哪学
  • 重庆建设厅的网站首页/最新地址
  • 自己做网站用花钱吗/网站推广在线
  • 加强统计局网站的建设和管理/aso优化方案
  • 一个网站的二级目录在另一台服务器上_怎么做/app推广赚佣金
  • 优秀的摄影作品网站/互联网营销师培训课程免费
  • 经营性质的网站/wordpress自助建站
  • 网站建设计入到什么科目/中国新冠一共死去的人数
  • 企业微信网站建设/网站开发框架
  • 如何用dw做网站底页/品牌互动营销案例
  • 互动营销网站建设/互联网营销培训平台
  • 怎么棋牌网站建设/中国搜索引擎
  • 汽车类网站/百度官网认证多少钱一年
  • 工作流绑定卡片优化用户体验-练习我要找工作智能体
  • golang的包和闭包
  • [硬件电路-148]:数字电路 - 什么是CMOS电平、TTL电平?还有哪些其他电平标准?发展历史?
  • 1. 两数之和
  • Piriority_queue
  • 【深度学习②】| DNN篇