如何實現(xiàn)springboot中controller之間的相互調(diào)用
更新時間:2021年06月09日 12:57:43 作者:qq_41235933
這篇文章主要介紹了實現(xiàn)springboot中controller之間的相互調(diào)用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
springboot controller之間相互調(diào)用
SpringBoot之間內(nèi)部調(diào)用
@Autowired private RestTemplate restTemplate ;//自動裝配restTemplate -------------------返回json字符串類型---------------------------------- @RequestMapping("/selectHospatal") @ResponseBody public String selectHospatal() throws Exception { //返回結(jié)果 pageNum PageData result = new PageData(); PageData pageData =getPageData(); int page=Integer.parseInt(pageData.getString("page")); int limit=Integer.parseInt(pageData.getString("limit")); String name=""; name=pageData.getString("name"); User user = (User) SecurityUtils.getSubject().getPrincipal(); /* 管理員注冊為0 患者為1藥廠注冊為3 醫(yī)生注冊為4 */ if(name==null){ name=""; } String forObject=""; int status=user.getStatus();//類型 String zsId=user.getType_id();//類型id if(status==5){//診室注冊為5//getManageurl是別的springboot服務(wù)的地址如:localhost:8080 String url = getManageurl+"/doctorController/selectHospatal?crid="+zsId+"&name="+name+"&page="+page+"&limit="+limit; forObject = restTemplate.getForObject(url, String.class); } if(status==6){//科室注冊為6 String url = getManageurl+"/doctorController/selectHospatal?dtid="+zsId+"&name="+name+"&page="+page+"&limit="+limit; forObject = restTemplate.getForObject(url, String.class); } if(status==2){//醫(yī)院注冊為2 String url = getManageurl+"/doctorController/selectHospatal?houid="+zsId+"&name="+name+"&page="+page+"&limit="+limit; forObject = restTemplate.getForObject(url, String.class); } return forObject;//返回的是json字符串類型 } --------------返回PageData對象--------------------------------- /** * 查詢數(shù)據(jù) * @return * @throws Exception */ @RequestMapping("/viewd") @ResponseBody public PageData viewd() throws Exception{ //參數(shù) PageData pageData = getPageData(); try { String url = getManageurl+"/doctorController/view?id="+pageData.getString("id"); // String forObject = restTemplate.getForObject(url, String.class); ResponseEntity<PageData> userResponseEntity = RestTemplateUtil.postJson(url, "", PageData.class, restTemplate); PageData body = userResponseEntity.getBody(); return body; } catch (Exception e) { logger.error(e.toString()); throw new Exception(e.toString()); } }
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- springboot手動動態(tài)注入controller和service方式
- SpringBoot開發(fā)詳解之Controller接收參數(shù)及參數(shù)校驗
- SpringBoot實現(xiàn)前后端、json數(shù)據(jù)交互以及Controller接收參數(shù)的幾種常用方式
- springboot controller 增加指定前綴的兩種實現(xiàn)方法
- springBoot controller,service,dao,mapper,model層的作用說明
- springboot @Controller和@RestController的區(qū)別及應(yīng)用詳解
- SpringBoot掃描不到Controller的解決方案
- SpringBoot中的Controller用法示例詳解
相關(guān)文章
SpringWebMVC的常用注解及應(yīng)用分層架構(gòu)詳解
這篇文章主要介紹了SpringWebMVC的常用注解及應(yīng)用分層架構(gòu),SpringWebMVC是基于ServletAPI構(gòu)建的原始Web框架,從?開始就包含在Spring框架中,感興趣的朋友可以參考下2024-05-05Java線程之join_動力節(jié)點(diǎn)Java學(xué)院整理
join() 定義在Thread.java中,下文通過源碼分享join(),需要的朋友參考下吧2017-05-05Spring Boot 整合 Apache Dubbo的示例代碼
Apache Dubbo是一款高性能、輕量級的開源 Java RPC 框架,這篇文章主要介紹了Spring Boot 整合 Apache Dubbo的方法,本文通過示例說明給大家講解的非常詳細(xì),需要的朋友可以參考下2021-07-07