真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

ribbon的調(diào)用方式和Feign實(shí)現(xiàn)遠(yuǎn)程調(diào)用

一:Feign

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、微信小程序、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了普蘭免費(fèi)建站歡迎大家使用!

創(chuàng)建FeignClient客戶端

@FeignClient(name = "product")//www.1b23.com
public interface IProductClient {

    @GetMapping("/msg")
    String productMessage();

    @PostMapping("/product/listForOrder")
    List productInfoList(@RequestBody List productIdList);

    @PostMapping("/product/decreaseStock")
    void decreaseStock(List cartDtoList);
}

  • @FeignClient(name = "product")表示這個(gè)接口是Feign客戶端,name表示應(yīng)用名。

  • @PostMapping("/product/listForOrder")和普通的Controller層調(diào)用寫法一樣,寫的是調(diào)用的接口,這里的接口是指http://product//product/listForOrder,和RestTemplate中的調(diào)用url一樣。

  1. 使用FeignClient客戶端。

  • 在調(diào)用FeignClient的啟動(dòng)類上加上@EnableFeignClients。

  • 在其它類中注入IProductClient接口,直接調(diào)用。

@Autowired
    private IProductClient productClient;

    @GetMapping("/getProductMsg")
    public String getProductMsg(){
        String response = productClient.productMessage();
        log.info("response={}",response);
        return response;
    }

注意,有時(shí)候會(huì)報(bào)找不到IProductClient這個(gè)bean,此時(shí)就需要添加掃描包,這個(gè)問題在調(diào)用時(shí)經(jīng)常遇到。

@EnableFeignClients(basePackages = "com.springcloud.product.client")

二:ribbon

可以看到 Feign 調(diào)用步驟比較繁瑣,并且傳參數(shù)以及經(jīng)過zuul 問題較多

再來看看ribbon 

 只需要在 implements 接口類里面引入一個(gè) ribbon 均衡,再方法中調(diào)用即可

/**
 * www.1b23.com
 */
@Service
@Transactional //開啟事物
public class UsersServiceImpl implements UsersService {
	
	@Autowired
	private LoadBalancerClient loadBalancerClient;//ribbon負(fù)載均衡器

    ......

   /**保存用戶
	 * @param pd
	 * @throws Exception
	 */
	public void saveUser(PageData pd)throws Exception {
		usersMapper.saveUser(pd);
		pd.put("tokenKey", Tools.creatTokenKey("userAdd"));
		LoadBalancerUtil.responseByPost(this.loadBalancerClient, "fh-dbsync", "user/add", pd);	//請(qǐng)求數(shù)據(jù)庫(kù)表同步微服務(wù)
	}

}

"fh-dbsync" 是注冊(cè)到eurake里面的服務(wù)名稱,“user/add”  微服務(wù)的 RequestMapping 完整路徑  “pd” 就是map,存放參數(shù)用的


文章標(biāo)題:ribbon的調(diào)用方式和Feign實(shí)現(xiàn)遠(yuǎn)程調(diào)用
本文路徑:http://weahome.cn/article/jhhpde.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部