我的中软国际实习Day16

springcloude

UserClient

package com.zr.client;import com.zr.pojo.User;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;@FeignClient(value = "zr-provider",fallback = UserClientFallback.class)
public interface UserClient {@RequestMapping("user/{id}")User queryById(@PathVariable("id")Long id);
}

UserClientFailback

package com.zr.client;import com.zr.pojo.User;
import org.springframework.stereotype.Component;@Component
public class UserClientFallback implements UserClient{@Overridepublic User queryById(Long id) {User user=new User();user.setUsername("失败啦。。。。");return user;}
}

UserController

package com.zr.controller;import com.netflix.hystrix.contrib.javanica.annotation.DefaultProperties;
import com.netflix.hystrix.contrib.javanica.annotation.HystrixCommand;
import com.zr.client.UserClient;
import com.zr.pojo.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.client.ServiceInstance;
import org.springframework.cloud.client.discovery.DiscoveryClient;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.client.RestTemplate;import java.util.List;@Controller
@RequestMapping("consumer/user")
@DefaultProperties(defaultFallback = "fallBackMethod")
public class UserController {/*@Autowiredpublic RestTemplate restTemplate;@Autowiredprivate DiscoveryClient discoveryClient;*/@Autowiredprivate UserClient userClient;@RequestMapping("{id}")@ResponseBody// @HystrixCommandpublic String queryById(@PathVariable Long id){/* User user=restTemplate.getForObject("http://localhost:8081/user/"+id,User.class);*//*List<ServiceInstance> instances = discoveryClient.getInstances("zr-provider");ServiceInstance instance = instances.get(1);User user=restTemplate.getForObject("http://localhost:"+instance.getPort()+"/user/"+id,User.class);return user.toString();*/User user = userClient.queryById(id);return user.toString();}/* public String fallBackMethod(){return "请求反面,请以后再尝试!!";}*/
}

application.yml

server:port: 8082
eureka:client:service-url:defaultZone: http://127.0.0.1:10086/eureka
spring:application:name: zr-consumer
feign:hystrix:enabled: true
// An highlighted block
var foo = 'bar';

UserController

package com.zr.controller;import com.zr.pojo.User;
import com.zr.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
@RequestMapping("user")
public class UserController {@Autowiredprivate UserService userService;@RequestMapping("{id}")public User queryById(@PathVariable("id")Long id){return  userService.queryById(id);}
}

UserService

package com.zr.service;import com.zr.dao.UserDao;
import com.zr.pojo.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;@Service
public class UserService {@Autowiredprivate UserDao userDao;public User queryById(Long id){return userDao.selectByPrimaryKey(id);}
}

application.yml

server:port: 8081
spring:datasource:url: jdbc:mysql://localhost:3306/springcloudusername: rootpassword: 123456application:name: zr-provider
mybatis:type-aliases-package: com.zr.pojo
eureka:client:service-url:defaultZone: http://127.0.0.1:10086/eureka

我的中软国际实习Day16相关推荐

  1. 中软国际实习学习第九天

    中软国际实习学习第九.十天 第九天我们实现的是新闻系统的登录的功能,以及在登录功能中间添加一个过滤器 package com.zhongruan.entity;import javax.persist ...

  2. 【中软国际实习】Day 11:Spring Boot:TNews项目实现新闻评论

    文章目录 新闻评论 实体类 Controller层 Service层 前端界面 小结 新闻评论 实体类 @Entity @Table(name = "t_comment") pub ...

  3. 中软国际实习 day10

    今天开始进行页面的设计,和其他成员讨论了数据库表的内容,建立了居民信息

  4. 中软国际实习 dzy15

    今天是最后一天,修改了几个js的引入方式,确保运行正常

  5. 中软国际入职java考核_中软国际技术人员入职试题2(Java)

    中软国际技术人员入职试题2(Java) Java 笔试试题 一.介绍JSP中常用的内部对象.(时间4分钟) 1 request 2 response 3 out 4 application 5 ses ...

  6. 华为麦芒5云空间升级_云+AI+5G 华为云联手中软国际引爆线下门店智能化升级

    一年一度的华为旗舰大会:2019华为全联接大会于9月18~20日在上海隆重举行.华为云和中软国际携手联合打造的智慧门店解决方案在这次盛会正式向零售行业发布.助力零售企业加速数字化.推进智能化,为顾客提 ...

  7. 中软国际2020年业绩再创新高 归母净利同比增长26.5%

    中软国际2020年业绩再创新高 归母净利同比增长26.5% https://mp.weixin.qq.com/s/D_gBBKtuomrxmrtt9BuISg 中软国际有限公司(SEHK:00354) ...

  8. 云上领跑 智慧贵州 中软国际与云上贵州深度合作助力政府数字化转型

    日前,中软国际董事局主席.CEO陈宇红,执行董事.高级副总裁唐振明,高级副总裁.首席数字官熊勇一行与云上贵州大数据集团党委书记.董事长康克岩,云上贵州公司党委书记.执行董事邓龙江,云上贵州公司总经理杨 ...

  9. 全球IT服务“十分天下有其一”,中软国际的底气来自何方?

    面对数字化转型,中软国际交出一份漂亮的答案. 在2020年财报中,中软国际收入同比增长17%,云智能业务收入同比增长63%:在2021年上半年中,营收83.4亿元人民币,按年增加37.7%.同时,在G ...

最新文章

  1. 编程异常——假设你报createSQLQuery is not valid without active transaction,...
  2. AsyncTask应用解析
  3. Java虚拟机类加载机制——案例分析
  4. 结合现有分布式系统的数据一致性思考
  5. JEECG datagrid 页面刷新reloadTable
  6. 漫步线性代数十一—— 四个基本子空间
  7. 滚动插件jQuery Marquee
  8. 头衔的权威暗示影响力
  9. 如何从零起步开发一款App
  10. IE11设置默认以IE8的方式解析
  11. centos7安装teamview
  12. php人民币转换,PHP转换,如何实现人民币中文大写与数字相互转换?
  13. Android 调起微信扫一扫
  14. 什么是数据库的实体关系图(ERD)?
  15. 基于babylon3D模型研究3D骨骼动画(1)
  16. 2021-07-16芯片-全球半导体产业核心地区的补贴及激励措施
  17. mybatis第十话 - mybaits整个事务流程的源码分析
  18. 小程序云服务器机型选择,小程序云服务器机型选择
  19. 【Java 面试合集】接口以及抽象类
  20. java 开发优势_Java最核心的优势是什么?

热门文章

  1. BZOJ4585 [Apio2016]烟火表演
  2. Autohotkey window 下宏键盘、宏命令开发入门
  3. (第一个java爬虫)java爬取网页文本并抽取中英文关键词
  4. Python的numpy库中rand(),randn(),randint(),random_integers()等random系函数的使用
  5. 尚硅谷以太坊区块链学习之NFT智能合约(6)
  6. Dataset之GermanCreditData:GermanCreditData数据集的简介、下载、使用方法之详细攻略
  7. 小型企业局域网搭建(一)
  8. 我知道的风俗 和我喜欢的节日
  9. 大学英语四线上考试翻译题
  10. 计算机等级报错等级怎么办,计算机等级考试怎么报两门(计算机等级考试报错了怎么办)...