java - 如何使用 String 的 Controller 和 RestTemplate 设置多个参数?

标签 java spring rest spring-mvc

您好,我需要修改现有的 Rest 接口(interface)。旧的 Rest 接口(interface)只取电话号码然后查找记录。电话号码过去在表格中是唯一的。现在是电话和号码(batchid)的组合。所以我需要修改服务实现和调用它的客户端。这是旧 Controller :

@RequestMapping(value="/{phone}", method = RequestMethod.GET)
        @ResponseBody
        public BatchDetail  findByPhone(@PathVariable String phone) {
            return batchDetailService.findByPhone(phone);

        }

这是旧客户端访问它的方式:

private static final String URL_GET_BATCHDETAIL_PHONE = "http://localhost:8080/Web2Ivr/restful/batchdetail/{phone}";
batchdetail = restTemplate.getForObject(URL_GET_BATCHDETAIL_PHONE, BatchDetail.class, phone);           
batchdetail.setStatus("OK");
restTemplate.put(URL_TO_UPDATE_BATCHDETAIL, batchdetail, batchdetail.getId())

;

所以我的问题是如何修改 Controller 和重新模板的客户端调用以支持两个变量,电话和号码(batchid),例如:

http://localhost:8080/Web2Ivr/restful/batchdetail/{batchid}/{phone}

最佳答案

@RequestMapping(value="/{batchid}/{phone}", method = RequestMethod.GET)
@ResponseBody
public BatchDetail  findByPhone(@PathVariable String phone, @PathVariable String batchid) {
    return batchDetailService.findByPhone(phone);

}

关于java - 如何使用 String 的 Controller 和 RestTemplate 设置多个参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12205298/

相关文章:

jquery - Bootstrap 文件输入插件,图标不显示,如何解决?

ruby-on-rails - 从 ActiveResource 请求中删除 .xml 扩展名

java - Lucky Sevens [净变化计算]

java - TicTacToe Java - 检查获胜者

java - Hibernate 5 Infinispan :java. lang.NoSuchMethodError : org. jboss.logging.Logger.debugf(Ljava/lang/String;I)V

java - Springboot的@Controller和@RestController注解什么时候用,底层概念是什么?

java - 如何在我自己的类中使用 onClickListener

java - @ConditionalOnExpression 启用/禁用@RestController

javascript - 从 ngInit 在 AngularJS 中全局设置自定义 HTTP header

http - RESTful 建议 : default value for given resource