SpringCloud详解04-服务间的参数传递
创始人
2025-05-30 02:42:16
0

系列文章目录


文章目录

  • 系列文章目录
  • 前言
  • 一、在服务提供方的UserController添加CRUD
  • 二、在消费方添加对应的CRUD方法
    • 1.在UserService中添加对应方法
    • 2.FeignUserController
  • 三、测试
  • 总结


前言

接上篇详解03,本篇记录服务间的参数传递


一、在服务提供方的UserController添加CRUD

这里正常情况下需要业务实现类去实现方法,去数据库拿数据,为了省点代码,本次使用模拟数据

package com.lzl.controller;import com.lzl.dto.UserDto;
import com.lzl.utils.JsonResult;
import org.springframework.web.bind.annotation.*;import java.util.Arrays;
import java.util.List;
/*** --效率,是成功的核心关键--** @Author lzl* @Date 2023/3/15 15:19*/@RestController
@RequestMapping("user-provider")
public class UserController {@RequestMapping("findAll")public JsonResult findAll(){System.out.println("7072");//模拟数据库中的数据List userList = Arrays.asList(new UserDto(1001, "张三"),new UserDto(1002, "李四"),new UserDto(1003, "王五"));JsonResult jsonResult = JsonResult.ok();jsonResult.setData(userList);return jsonResult;}//模拟数据库操作//查询单个@GetMapping("findById")public JsonResult findById(@RequestParam("id") Integer id){UserDto user = new UserDto(id, "jack");JsonResult jsonResult = JsonResult.ok();jsonResult.setData(user);return jsonResult;}//删除单个@DeleteMapping("deleteById/{id}")public JsonResult deleteById(@PathVariable("id") Integer id){System.out.println("deleteById:"+id);return JsonResult.ok();}//添加@PostMapping("addUser")public JsonResult addUser(@RequestBody UserDto user){System.out.println("addUser:"+user);return JsonResult.ok();}//修改@PutMapping("updateUser")public JsonResult updateUser(@RequestParam Integer id,@RequestParam String name){System.out.println("updateUser:"+id+"--"+name);return JsonResult.ok();}}

二、在消费方添加对应的CRUD方法

1.在UserService中添加对应方法

package com.lzl.service;import com.lzl.dto.UserDto;
import com.lzl.utils.JsonResult;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.*;/*** --效率,是成功的核心关键--** @Author lzl* @Date 2023/3/15 16:23*/
@Service
@FeignClient("provider")//服务名,需要在nacos界面查看服务列表
public interface UserService {@RequestMapping("/user-provider/findAll")JsonResult findAll();//模拟数据库操作//查询单个@GetMapping("/user-provider/findById")JsonResult findById(@RequestParam("id") Integer id);//删除单个@DeleteMapping("/user-provider/deleteById/{id}")JsonResult deleteById(@PathVariable("id") Integer id);//添加@PostMapping("/user-provider/addUser")JsonResult addUser(@RequestBody UserDto user);//修改@PutMapping("/user-provider/updateUser")JsonResult updateUser(@RequestParam Integer id,@RequestParam String name);
}

2.FeignUserController

package com.lzl.controller;import com.lzl.dto.UserDto;
import com.lzl.service.UserService;
import com.lzl.utils.JsonResult;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;/*** --效率,是成功的核心关键--** @Author lzl* @Date 2023/3/15 16:25*/@RestController
@RequestMapping("feign")
public class FeignUserController {@Autowiredprivate UserService userService;@RequestMapping("findAll")public JsonResult findAll(){return userService.findAll();}//模拟数据库操作//查询单个@GetMapping("findById")public JsonResult findById(@RequestParam("id") Integer id){return userService.findById(id);}//删除单个@DeleteMapping("deleteById/{id}")public JsonResult deleteById(@PathVariable("id") Integer id){return userService.deleteById(id);}//添加@PostMapping("addUser")public JsonResult addUser(UserDto user){return userService.addUser(user);}//修改@PutMapping("updateUser")public JsonResult updateUser(@RequestParam Integer id,@RequestParam String name){return userService.updateUser(id,name);}
}

三、测试

启动服务提供方和消费方访问对应的方法

在这里插入图片描述

成功


总结

本篇记录服务间参数传递,更多内容见下篇

相关内容

热门资讯

王大雷社媒晒昨晚与津门虎比赛照... 直播吧6月15日讯 中超第14轮,山东泰山客场0-1不敌天津津门虎,近6年首次输给对手。 今日泰山门...
曼联意外获得吉奥克斯转会利好,... 引言 近日,关于曼联和阿森纳争夺Sporting CP前锋维克托·吉奥克斯的转会传闻再次掀起波澜...
刚刚,青岛急雨突袭!“哗哗哗,... “哗哗哗,好像天上在泼水” “瓢泼大盆,瞬间天黑!” “来去匆匆,很快就结束了。” 6月15日下...
我省金融系统全力推动一揽子货币... 河南日报客户端记者 李鹏 牧原食品股份有限公司成功发行全国首批“科技板”科技创新债券,以提升企业科技...
辅警跳河救起轻生女,上岸时被红... ▲救人现场 警方供图 “当时我也没多想,就想先把人救起来。”6月15日,四川西昌的辅警娄志向红星...
(聚焦海峡论坛)两岸基层调解员... 中新社厦门6月15日电 (郑江洛)第十七届海峡论坛·两岸基层调解员联谊交流会15日在福建厦门举行,以...
原创 六... 移民处置措施背后的联邦政府与州政府的权力之争,是美国宪政-政治级别危机的真正酝酿质地,洛杉矶暴力冲突...
要价4500万米体:霍伊伦非常... 直播吧06月15日讯 据意媒《米兰体育报》报道,国米希望签下曼联前锋霍伊伦,正寻求租借+买断。 报道...
中考收官!历城二中、山师附中…... 6月15日11时,济南市学业水平考试(九年级)结束。 在山东省实验中学考点,铃声响起,考生们面带灿烂...