zoukankan      html  css  js  c++  java
  • 两个项目之间通过 RestTemplate 进行调用

    A服务发出请求:

    @RequestMapping("/jqgridjsondata.json")
    @ResponseBody
    public String jqgridJsonData(HttpServletRequest request) {
    
        String laglms_service_method = "test/gettestentityset";
        String serviceaddr = String.format("%s:%s/%s", LAGLMS_SERVICE_URI, LAGLMS_SERVICE_PORT, laglms_service_method);
    
        return restTemplate.postForObject(serviceaddr, requestConvert(request), String.class);
    }
    
    /**
     * 转换请求以适用于rest template.
     *
     * @param request http sevlet request.
     * @return multivaluemap.
     */
    private MultiValueMap<String, Object> requestConvert(HttpServletRequest request) {
        MultiValueMap<String, Object> parameterMap = new LinkedMultiValueMap<>();
        HttpHeaders headers = new HttpHeaders();
        headers.add("Content-Type", "application/x-www-form-urlencoded");
        HttpEntity<MultiValueMap<String, Object>> r = new HttpEntity<>(parameterMap, headers);
        for (Map.Entry<String, String[]> entry : request.getParameterMap().entrySet()) {
            parameterMap.add(entry.getKey(), entry.getValue()[0]);
        }
        return parameterMap;
    }
    

    B服务接收:

    package com.thunisoft.laglms.controller;
    
    import com.thunisoft.laglms.pojo.JQGridPojo;
    import com.thunisoft.laglms.pojo.TestEntityPojo;
    import com.thunisoft.laglms.service.TestService;
    import com.thunisoft.maybee.engine.db.feature.PageInfo;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.ResponseBody;
    
    @Controller
    @RequestMapping("/test")
    public class TestController {
    
        @Autowired
        private TestService testService;
    
        @RequestMapping("/gettestentityset")
        @ResponseBody
        public JQGridPojo getTestEntitySet(TestEntityPojo queryvo, PageInfo pageInfo) {
            JQGridPojo jqGridPojo = testService.getTestEntitySet(queryvo, pageInfo);
            return jqGridPojo;
        }
    }
    
  • 相关阅读:
    🔨FFmpeg 转换至 MP4 视频格式
    🔨Ubuntu Linux '门' '复' 显示不标准
    🔨Youtube-dl 开代理搭配 Aria2 多线程加速下载
    📔 如何用英语的思维来思考 How to THINK in English
    🚀 sublime 加速软件下载
    🚀 snap 代理
    🚀 Chocolatey 代理
    🔨 Deepin V20 软件及遇到的问题
    💿 npm 换源 (转载)
    🔨FFmpeg 合并视频
  • 原文地址:https://www.cnblogs.com/hfultrastrong/p/8853731.html
Copyright © 2011-2022 走看看